zoukankan      html  css  js  c++  java
  • 在WinRT中读取资源文件

    在.Net Framework程序中,我们经常以如下方式读取程序集中的资源文件:

        Assembly readAssembly = Assembly.GetExecutingAssembly();
        StreamReader streamReader = new StreamReader(readAssembly.GetManifestResourceStream("Test.txt"));

    但是,在WinRT中,这种方式失效了,如果要在WinRT中读取资源文件需要用到如下方式:

    1. 将资源文件的生成方式设置为"内容(Content)"
    2. 通过Windows.ApplicationModel.Package.Current.InstalledLocation属性获取根文件夹
    3. 根据相对路径获取资源文件

    为了简化操作,我写了一个函数方便使用:

        public static async Task<StorageFile> GetPackagedFileAsync(string fileName)
        {
            StorageFolder installFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
            return await installFolder.GetFileAsync(fileName);
        }

    这种方式读取WinRT类库的资源文件也可以使用,不过WinRT类库的资源文件在InstalledLocation下多了一个以其程序集命名的文件夹(如果没有设置前面的第一步操作时看不到),调试的时候可以通过installFolder.GetFoldersAsync()函数查看。

  • 相关阅读:
    Filecoin:一种去中心化的存储网络(二)
    Filecoin:一种去中心化的存储网络(一)
    HTTP
    数据结构中的查找
    剑指offer-高质量的代码
    C++中STL容器的比较
    PBFT算法的相关问题
    springmvc最全约束
    springmvc入门(一)
    spring入门(一)
  • 原文地址:https://www.cnblogs.com/TianFang/p/2666849.html
Copyright © 2011-2022 走看看