如何在Windows Phone 8.1应用程序中阅读格式化文本文件?

时间:2015-11-11 14:35:25

标签: c# file-io windows-phone-8.1 windows-8.1 code-formatting

如何在Windows Phone 8.1应用程序中读取格式化文本文件(例如代码文件)?我读了下面这样的文本文件,但是当它有一行注释时,例如它会混淆整个阅读内容..

private async Task<string> GetFileContent()
    {
        string str = "";

        string strResourceReference = "ms-appx:///Helpers/MyJavaScriptFile.js";
        StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(strResourceReference, UriKind.Absolute));
        Stream sr = await file.OpenStreamForReadAsync();
        await FileIO.ReadLinesAsync(file);

        foreach (string s in await FileIO.ReadLinesAsync(file))
        {
            str += s;
        }

        return str;
    }

1 个答案:

答案 0 :(得分:1)

由于您只是连接FileIO.ReadLinesAsync返回的各个行,因此您应该调用FileIO.ReadTextAsync来从一开始就将所有文件内容放在一个字符串中。通过这种方式,您不需要foreach对其进行操作并在此过程中丢失新行:

private async Task<string> GetFileContent()
{
    string strResourceReference = "ms-appx:///Helpers/MyJavaScriptFile.js";
    StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(strResourceReference, UriKind.Absolute));
    using (Stream sr = await file.OpenStreamForReadAsync())
    {
        return await FileIO.ReadTextAsync(file);
    }
}

我还添加了using语句,以便在您完成阅读后正确关闭信息流。