使用StreamResourceInfo读取文件GetResourceStream(Uri uriResource)

时间:2015-10-14 09:52:26

标签: windows-phone-8.1

我想使用StreamResourceInfo GetResourceStream(Uri uriResource)方法读取文件,其中我的文件名是Assets,其类型是文件(扩展名)所以我在windows phone 8.1 sdk中使用了以下代码行,

StreamResourceInfo info = App.GetResourceStream(new Uri("Assets", UriKind.Relative));

但是info变量显示空值。

1 个答案:

答案 0 :(得分:0)

是否有必要在您的情况下使用GetResourceStream?您的问题有点不清楚,但如果您想获取文件的内容,可以试试这个:

public async Task<string> GetFileContent(string fileName)
    {
        try
        {
            string text = string.Empty;
            StorageFile storageFile = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(fileName);
            if (storageFile != null)
            {
                IBuffer buffer = await FileIO.ReadBufferAsync(storageFile);
                DataReader reader = DataReader.FromBuffer(buffer);
                byte[] fileContent = new byte[reader.UnconsumedBufferLength];
                reader.ReadBytes(fileContent);
                text = Encoding.UTF8.GetString(fileContent, 0, fileContent.Length);
            }

            return text;
        }
        catch (Exception e)
        {
            return string.Empty;
        }
    }

注意,它返回字符串UTF8编码,您可以根据需要进行更改。

用法:

var fileContent = await GetFileContent(@"Assets\[yourfile]");