如何在Windows Phone 8中将文本写入文件?

时间:2014-06-27 14:30:30

标签: c# windows-phone-8

我找到了如何将数据写入Windows Phone 8中的文件的示例:

https://stackoverflow.com/a/15625701/181771

public async Task WriteDataToFileAsync(string fileName, string content) {
byte[] data = Encoding.Unicode.GetBytes(content);

var folder = ApplicationData.Current.LocalFolder;
var file = await folder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);

using (var s = await file.OpenStreamForWriteAsync())
{
    await s.WriteAsync(data, 0, data.Length);
} }

这样可行,但文本已编码。我试图写一个JSON文件,所以我想保存原始文本。

我需要做些什么来完成这项工作?

2 个答案:

答案 0 :(得分:1)

使用会自动处理编码的StreamWriter

public async Task WriteDataToFileAsync(string fileName, string content)
{
var folder = ApplicationData.Current.LocalFolder;
var file = await folder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);

using (var s = await file.OpenStreamForWriteAsync())
{
    using (var writer = new StreamWriter(s))
    {
        await writer.WriteAsync(content);
    }
} 
}

答案 1 :(得分:0)

尝试使用JSON.NET 使用此

进行序列化非常简单
Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small" };

string json = JsonConvert.SerializeObject(product);
//{
//  "Name": "Apple",
//  "Expiry": "2008-12-28T00:00:00",
//  "Sizes": [
//    "Small"
//  ]
//}

然后将名为json的字符串保存到文件。

您可以在http://james.newtonking.com/json/help/index.html

找到更多有用的内容