0

我在 WP8 中读取文件时遇到问题。

string text;
IStorageFolder applicationFolder = ApplicationData.Current.LocalFolder;

IStorageFile storageFile = await applicationFolder.GetFileAsync("MyFile.txt");
IRandomAccessStream accessStream = await storageFile.OpenReadAsync();

using (Stream stream = accessStream.AsStreamForRead((int)accessStream.Size))
{
    byte[] content = new byte[stream.Length];
    await stream.ReadAsync(content, 0, (int)stream.Length);

    text = Encoding.UTF8.GetString(content, 0, content.Length);
}

return text;

有时storagefileaccessStream无缘无故的崩溃。如果我调试它们,它可以工作。

我不知道为什么。谁能帮我?

4

1 回答 1

0

我正在使用这段代码。结果将是您的 txt 文件中的文本,缩短为一个字符串,因此假设您的 txt 文件包含它。

This
is
a test.

结果将是

This\nis\na\test.

然后,您需要做的就是将它们分开。字符串结果=空;

IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication();
if (store.FileExists("services.txt"))
{
    using (var stream = new IsolatedStorageFileStream("services.txt", FileMode.Open, store))
    {
        using (var fileReader = new StreamReader(stream))
        {
            result = fileReader.ReadToEnd();
        }
    }
}

这就是我拆分消息的方式。

string[] tmp = result.Split(new char[] { '\r', '\n', '.' });
foreach (string str in tmp)
{
    System.Diagnostics.Debug.WriteLine(str);
}

希望这可以帮助。

于 2013-05-23T03:37:23.000 回答