如何在Windows Phone 8.1中使用streamwriter和文件追加?

时间:2014-07-21 03:29:42

标签: c# .net windows-runtime windows-phone-8.1 winrt-async

在Windows Phone 8.1中 我想在文本中使用streamwriter,并将文本附加到文件结尾。 但是文本被附加到文件的开头。 如何将文本附加到文件结束?

StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///input_category_list.txt"));
using (StreamWriter sWrite = new StreamWriter(await file.OpenStreamForWriteAsync(), System.Text.UTF8Encoding.UTF8))
{  
    sWrite.WriteLine(write_category_box.Text);
    await sWrite.FlushAsync();                        
}

2 个答案:

答案 0 :(得分:4)

在Windows运行时不需要StreamWriter,您可以使用FileIO类(这更容易):

StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///input_category_list.txt"));

await FileIO.AppendTextAsync(file, write_category_box.Text, UnicodeEncoding.Utf8);

答案 1 :(得分:0)

将您的代码更改为:

new StreamWriter(await file.OpenStreamForWriteAsync(),System.Text.UTF8Encoding.UTF8,true))

如果您将StreamWriter构造函数覆盖为true,则会设置为附加文本。否则覆盖它。