BasicProperties
BasicProperties
BasicProperties
BasicProperties
BasicProperties
Class
Definition
Provides access to the basic properties, like the size of the item or the date the item was last modified, of the item (like a file or folder).
public : sealed class BasicProperties : IBasicProperties, IStorageItemExtraProperties
struct winrt::Windows::Storage::FileProperties::BasicProperties : IBasicProperties, IStorageItemExtraProperties
public sealed class BasicProperties : IBasicProperties, IStorageItemExtraProperties
Public NotInheritable Class BasicProperties Implements IBasicProperties, IStorageItemExtraProperties
// This class does not provide a public constructor.
- Attributes
Device family |
Windows 10 (introduced v10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced v1)
|
Examples
The File access sample demonstrates how to retrieve properties of a file, including basic properties like Size and DateModified.
try
{
StorageFile file = rootPage.sampleFile;
if (file != null)
{
StringBuilder outputText = new StringBuilder();
// Get basic properties
BasicProperties basicProperties = await file.GetBasicPropertiesAsync();
outputText.AppendLine("File size: " + basicProperties.Size + " bytes");
outputText.AppendLine("Date modified: " + basicProperties.DateModified);
// Specify more properties to retrieve
readonly string dateAccessedProperty = "System.DateAccessed";
readonly string fileOwnerProperty = "System.FileOwner";
List<string> propertiesName = new List<string>();
propertiesName.Add(dateAccessedProperty);
propertiesName.Add(fileOwnerProperty);
// Get the specified properties through StorageFile.Properties
IDictionary<string, object> extraProperties = await file.Properties.RetrievePropertiesAsync(propertiesName);
var propValue = extraProperties[dateAccessedProperty];
if (propValue != null)
{
outputText.AppendLine("Date accessed: " + propValue);
}
propValue = extraProperties[fileOwnerProperty];
if (propValue != null)
{
outputText.AppendLine("File owner: " + propValue);
}
}
}
// Handle errors with catch blocks
catch (FileNotFoundException)
{
// For example, handle a file not found error
}
var file = SdkSample.sampleFile;
if (file !== null) {
var outputDiv = document.getElementById("output");
// Get top level file properties
outputDiv.innerHTML = "Filename: " + file.name + "<br/>";
outputDiv.innerHTML += "File type: " + file.fileType + "<br/>";
// Get basic properties
file.getBasicPropertiesAsync().then(function (basicProperties) {
outputDiv.innerHTML += "Size: " + basicProperties.size + " bytes<br/>";
outputDiv.innerHTML += "Date modified: " + basicProperties.dateModified + "<br/>";
// Get extra properties
return file.properties.retrievePropertiesAsync([fileOwnerProperty, dateAccessedProperty]);
}).done(function (extraProperties) {
var propValue = extraProperties[dateAccessedProperty];
if (propValue !== null) {
outputDiv.innerHTML += "Date accessed: " + propValue + "<br/>";
}
propValue = extraProperties[fileOwnerProperty];
if (propValue !== null) {
outputDiv.innerHTML += "File owner: " + propValue;
}
},
// Handle errors with an error function
function (error) {
// Handle errors encountered while retrieving properties
});
}
After GetBasicPropertiesAsync completes, basicProperties
gets a BasicProperties object.
In the example, file
contains a StorageFile that represents the file to retrieve properties for.
Remarks
You can access a BasicProperties object asynchronously using the GetBasicPropertiesAsync method of an item (like a file of folder), or synchronously using the BasicProperties property if it is available.
You can get a BasicProperties object using any of the following methods and properties:
- storageFile.getBasicPropertiesAsync method
- storageFolder.getBasicPropertiesAsync method
- FileInformation.basicProperties property
- FolderInformation.basicProperties property
Properties
DateModified DateModified DateModified DateModified DateModified |
Gets the timestamp of the last time the file was modified. |
ItemDate ItemDate ItemDate ItemDate ItemDate |
Gets the most relevant date for the item. |
Size Size Size Size Size |
Gets the size of the file in bytes. |
Methods
RetrievePropertiesAsync(IIterable<String>) RetrievePropertiesAsync(IIterable<String>) RetrievePropertiesAsync(IIterable<String>) RetrievePropertiesAsync(IIterable<String>) RetrievePropertiesAsync(IIterable<String>) |
Retrieves the specified properties associated with the item. |
SavePropertiesAsync() SavePropertiesAsync() SavePropertiesAsync() SavePropertiesAsync() SavePropertiesAsync() |
Saves all properties associated with the item. |
SavePropertiesAsync(IIterable<IKeyValuePair<String, Object>>) SavePropertiesAsync(IIterable<IKeyValuePair<String, Object>>) SavePropertiesAsync(IIterable<IKeyValuePair<String, Object>>) SavePropertiesAsync(IIterable<IKeyValuePair<String, Object>>) SavePropertiesAsync(IIterable<IKeyValuePair<String, Object>>) |
Saves the specified properties and values associated with the item. |