我正在使用XAML / C#构建一个
Windows 8地铁应用程序.我用一个流保存一个.xml文件我的数据结构,像这样:
XmlSerializer serializer = new XmlSerializer(typeof(MyObjectType)); using (var stream = await App.LocalStorage.OpenStreamForWriteAsync(MyObject.Title + ".xml",Windows.Storage.CreationCollisionOption.GenerateUniqueName)) serializer.Serialize(stream,MyObject);
哪里:
App.LocalStorage
显然是一个StorageFolder对象设置为
Windows.Storage.ApplicationData.Current.LocalFolder
GenerateUniqueName选项被设置为避免冲突,因为我的对象可以具有相同的标题.现在,我需要获取我的流生成的文件名,我该如何得到它?
谢谢
解决方法
尝试先创建文件.
var sourceFileName = MyObject.Title + ".xml"; StorageFile storageFile = await App.LocalStorage.CreateFileAsync(sourceFileName,Windows.Storage.CreationCollisionOption.GenerateUniqueName); using (var stream = await storageFile.OpenAsync(FileAccessMode.ReadWrite)) { serializer.Serialize(stream,MyObject); }