【发布时间】:2023-09-15 18:57:01
【问题描述】:
我使用这个函数在我的 UWP 项目中写入文件:
public static async Task WriteToFileAsync<T>(string fileName, T objectToWrite) where T : new()
{
StorageFolder storageFolder = ApplicationData.Current.LocalFolder
TextWriter writer = null;
try
{
StorageFile file = await storageFolder.CreateFileAsync(fileName + ".txt");
var serializer = new XmlSerializer(typeof(T));
var stream = await file.OpenStreamForWriteAsync();
writer = new StreamWriter(stream);
serializer.Serialize(writer, objectToWrite);
}
finally
{
if (writer != null)
writer.Close();
}
}
但是这似乎不会将 DateTimeOffset 值写入文件。
我目前使用的解决方案是将其转换为字符串,但这似乎有点乱。
有没有更优雅的方法来做到这一点?
【问题讨论】:
-
退后一步。当您编写
DateTimeOffset时,您希望出现什么字节序列?DateTimeOffset的某种二进制形式?它的字符串表示之一?表示过去某个时期的毫秒数的数字?还有什么? -
好像不是这样。看看这个问题:*.com/questions/3377036/…
-
您的问题得到解答了吗?如果是这样,您能否选择一个答案并关闭此问题?谢谢!
标签: c# streamwriter