C# WinRT-Windows 8-Metro应用程序中最后一次编辑xml文件的时间
我的问题如下。我想知道是否可能知道xml文件的最后一次编辑时间 目前,我正在以以下方式创建xml并读取xml: 这是写作部分,我正在序列化一个可观察的集合:C# WinRT-Windows 8-Metro应用程序中最后一次编辑xml文件的时间,c#,datetime,windows-8,windows-runtime,xml-serialization,C#,Datetime,Windows 8,Windows Runtime,Xml Serialization,我的问题如下。我想知道是否可能知道xml文件的最后一次编辑时间 目前,我正在以以下方式创建xml并读取xml: 这是写作部分,我正在序列化一个可观察的集合: XmlSerializer xs = new XmlSerializer(typeof(ObservableCollection<DomExistingVacationDays>)); using (IRandomAccessStream sessionRandomAccess = await V
XmlSerializer xs = new XmlSerializer(typeof(ObservableCollection<DomExistingVacationDays>));
using (IRandomAccessStream sessionRandomAccess = await VacationRequestOfflineHolidaysFile.OpenAsync(FileAccessMode.ReadWrite))
{
using (IOutputStream sessionOutputStream = sessionRandomAccess.GetOutputStreamAt(0))
{
using (StreamWriter wr = new StreamWriter(sessionOutputStream.AsStreamForWrite()))
{
xs.Serialize(wr, _existingHolidaysCollection);
}
}
}
XmlSerializer xs = new XmlSerializer(typeof(ObservableCollection<DomExistingVacationDays>));
using (IRandomAccessStream sessionRandomAccess = await VacationRequestOfflineHolidaysFile.OpenAsync(FileAccessMode.ReadWrite))
{
using (IInputStream sessionInputStream = sessionRandomAccess.GetInputStreamAt(0))
{
using (StreamReader rd = new StreamReader(sessionInputStream.AsStreamForRead()))
{
_existingHolidaysCollection = xs.Deserialize(rd) as ObservableCollection<DomExistingVacationDays>;
}
}
}
这是读取部分,反序列化可观察集合:
XmlSerializer xs = new XmlSerializer(typeof(ObservableCollection<DomExistingVacationDays>));
using (IRandomAccessStream sessionRandomAccess = await VacationRequestOfflineHolidaysFile.OpenAsync(FileAccessMode.ReadWrite))
{
using (IOutputStream sessionOutputStream = sessionRandomAccess.GetOutputStreamAt(0))
{
using (StreamWriter wr = new StreamWriter(sessionOutputStream.AsStreamForWrite()))
{
xs.Serialize(wr, _existingHolidaysCollection);
}
}
}
XmlSerializer xs = new XmlSerializer(typeof(ObservableCollection<DomExistingVacationDays>));
using (IRandomAccessStream sessionRandomAccess = await VacationRequestOfflineHolidaysFile.OpenAsync(FileAccessMode.ReadWrite))
{
using (IInputStream sessionInputStream = sessionRandomAccess.GetInputStreamAt(0))
{
using (StreamReader rd = new StreamReader(sessionInputStream.AsStreamForRead()))
{
_existingHolidaysCollection = xs.Deserialize(rd) as ObservableCollection<DomExistingVacationDays>;
}
}
}
我想要实现的是,当xml文件中的数据比let's day旧几天时,我不再希望使用它
因此,我可以在xml文件中添加日期时间,但我想知道是否还有其他解决方案
Thnx 您可能会查找File.GetCreationTimepath和/或File.GetLastWriteTimepath namespace System.IO
在Win8 UI应用程序中,您可能希望使用StorageFile.GetBasicPropertiesAsync。返回的BasicProperties包含DateModified。另外,StorageFile.DateCreated可能会引起兴趣。您可能会查找File.GetCreationTimepath和/或File.GetLastWriteTimepath namespace System.IO
在Win8 UI应用程序中,您可能希望使用StorageFile.GetBasicPropertiesAsync。返回的BasicProperties包含DateModified。另外,StorageFile.DateCreated可能会引起人们的兴趣。在@jefferson的帮助下,我使用StorageFile类完成了这项工作。在MetroApps中,FileInfo类已替换为StorageFile类。 在获得storageFile后,我使用了以下代码:
var documentProperties = await OfflineRFile.GetBasicPropertiesAsync();
var dateLastModified = documentProperties.DateModified;
OfflineRFile是我的存储文件
Thnx对于快速响应我可以通过使用StorageFile类在@Jefferson的帮助下完成这个Thnx。在MetroApps中,FileInfo类已替换为StorageFile类。 在获得storageFile后,我使用了以下代码:
var documentProperties = await OfflineRFile.GetBasicPropertiesAsync();
var dateLastModified = documentProperties.DateModified;
OfflineRFile是我的存储文件
Thnx对于快速响应我不知道你的意思是什么,也不知道我应该如何使用它。我应该使用哪个类来实现此功能?@Landvis namespace=System.IO classname=File methodname=GetCreationTime:请查看MSDN中的文档。File类是一个带有一些静态函数的静态类。因此,您不需要打开该文件,这相对于FileSystemInfo和FileInfo等其他类来说是一个优势。您可以调用File.GetLastWriteTime。。。参数指向xml文件。然后您可以将返回的DateTime与您需要的任何内容进行比较。是的,我已经对此进行了研究,发现在MetroApps中,FileInfo类不再可用,它已从我发现的内容中替换为WinRT MetroApps中的StorageFile。我不确定您的意思是什么,也不确定我应该如何使用它。我应该使用哪个类来实现此功能?@Landvis namespace=System.IO classname=File methodname=GetCreationTime:请查看MSDN中的文档。File类是一个带有一些静态函数的静态类。因此,您不需要打开该文件,这相对于FileSystemInfo和FileInfo等其他类来说是一个优势。您可以调用File.GetLastWriteTime。。。参数指向xml文件。然后您可以将返回的DateTime与您需要的任何内容进行比较。是的,我对此进行了研究,发现在MetroApps中,FileInfo类不再可用,它已从我发现的内容中替换为WinRT MetroApps中的StorageFile