0

我正在开发我的第一个WinRT应用程序,但似乎找不到任何代码可以让我遍历目录并获取该目录中的文件名?

我发现很多代码可以在普通的 winform、wpf 和控制台中执行此操作,但对于Winrt种类来说却没有。

我最接近的代码:

Uri dataUri = new Uri("ms-appx:///DataModel/SampleData.json");

但这似乎只是获得了我自己项目中的文件?

我将如何扫描像“c:\something\something”这样的普通目录?

4

1 回答 1

0

我正在开发我的第一个 WinRT 应用程序,但似乎找不到任何代码可以让我遍历目录并获取该目录中的文件名?

如果要遍历 UWP 中的目录,可以使用GetFilesAsync从目录中获取文件列表。

但是,UWP 以沙盒方式运行,并且对文件系统的访问非常有限。在大多数情况下,他们只能直接访问他们的安装文件夹和他们的应用程序数据文件夹。只能通过代理进程访问其他位置。

您可以@"c:\something\something"通过FileOpenPicker或访问FolderPicker

var picker = new Windows.Storage.Pickers.FileOpenPicker();
picker.ViewMode = Windows.Storage.Pickers.PickerViewMode.Thumbnail;
picker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary;
picker.FileTypeFilter.Add(".jpg");
picker.FileTypeFilter.Add(".jpeg");
picker.FileTypeFilter.Add(".png");

Windows.Storage.StorageFile file = await picker.PickSingleFileAsync();
if (file != null)
{
    // Application now has read/write access to the picked file

}
else
{

}

这是您可以参考的官方教程。

于 2018-03-05T02:29:52.577 回答