繁体   English   中英

如何在WinRT类库中访问文件夹并获取StorageFile列表?

[英]How to access folder & get StorageFile list in WinRT class library?

我正在创建一个类库。 它包含几个图像。 在WinRT应用中,我们可以像这样从特定的文件夹枚举文件。

var folder = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync("Assets");
var files = await folder.GetFilesAsync(); //which returns List<StorageFile>

创建类库时,我可以像这样访问单个图像

Assembly assembly = typeof(CLASS_NAME).GetTypeInfo().Assembly;
Stream manifestResourceStream = assembly.GetManifestResourceStream("MyImage.png")

下面的行返回整个程序集的所有资源,而不是特定的文件夹。

string[] names = assembly.GetManifestResourceNames();

我尝试了这个,但是没有用。 引发异常指定的路径(ms-appx:/// LibraryName / Images)包含一个或多个无效字符。

var sf = await StorageFolder.GetFolderFromPathAsync("ms-appx:///LibraryName/Images");

现在我有近100幅图像,这样驴就可以工作了,那么如何访问该文件夹以获取所有文件的列表?

请注意,我正在为Windows Store App创建类库。

我只是碰巧解决了这个问题。

GetFolderFromPathAsync仅接受“ \\”(反斜杠),而不接受“ /”(斜杠)。 当我从Unity Project使用Application.dataPath ,它也会报告此错误。 现在我用

StorageFolder storageFolder = await
StorageFolder.GetFolderFromPathAsync(
    Windows.ApplicationModel.Package.Current.InstalledLocation.Path + 
    @"\Data\Resources"
); 

获取Unity的Resource文件夹。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM