我查看了很多 stackoverflow 帖子和文章,但仍然无法在 UWP 中创建文件。在 WPF 中这确实很容易,但 UWP 的工作方式有所不同。
我在清单文件中添加了以下内容:
<Capabilities>
<uap:Capability Name="documentsLibrary" />
</Capabilities>
现在我不知道下一步该做什么。在我的文档文件夹中,有一个名为“Project Files”的子文件夹。我想在那里创建文件夹和文件。在 UWP 中这是如何完成的?我真的不明白。
正如微软在其文档中所述,它重新开始不通过 UWP 应用程序使用文档库,而是选择内置存储,除非绝对必要。
如果您使用文件夹选择器,有一个简单的方法可以解决这个问题
private async void buttonClick(){
FolderPicker folderPicker = new FolderPicker();
folderPicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary;
folderPicker.FileTypeFilter.Add("*");
StorageFolder folder= await folderPicker.PickSingleFolderAsync();
if (folder != null) {
// do Things On Folder
}
else
{
MessageDialog dialog = new MessageDialog("you selected nothing");
await dialog.ShowAsync();
}
}
上面打开了一个文件夹选择对话框,它返回用户选择的文件夹,这是访问应用程序文件夹之外的位置的推荐方法。
以下是在此文件夹中创建新文件的方法:
string name ="myTitle.txt";
await folder.CreateFileAsync(name, CreationCollisionOption.GenerateUniqueName);
以下是如何打开和写入文件:
try {
StorageFile myFile = await folder.GetFileAsync(name);
await Windows.Storage.FileIO.WriteTextAsync(myFile, "myStringContent");
}
catch (Exception e)
{
Debug.WriteLine("Failure: "+e.Message);
return;
}
请记住,如果您使用本地存储,则始终可以避免打开对话框,它会在一行中返回应用程序的存储文件夹,如下所示:
var folder= ApplicationData.Current.LocalFolder;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)