Json.net具有异步功能将对象转换为JSON,如:Json.net异步时,文件
jsn = await JsonConvert.DeserializeObjectAsync<T>
但是,当我想WRITEA对象到JSON文件似乎不如我直接使用文件流。
所以我想应该是这样的:
var fileStream = await file.OpenAsync(FileAccessMode.ReadWrite);
using (IOutputStream outputStream = fileStream.GetOutputStreamAt(0))
{
using (StreamWriter sw = new StreamWriter(fileStream.AsStreamForWrite()))
{
using (JsonWriter jw = new JsonTextWriter(sw))
{
jw.Formatting = Formatting.Indented;
JsonSerializer serializer = new JsonSerializer();
serializer.Serialize(jw, obj);
}
}
但在JsonSerzializer对象我找不到异步方法。另外我认为IO操作不应该放在自己的线程中。
推荐的方法是什么?
感谢您指出了这一点。我已经在想如何一个字符串操作可以是非线程异步.. 流可以做成异步。也许这将是Json.net的一个功能,但显然它还没有被执行。所以谢谢你的回答。 – 2013-03-27 06:49:32
这将是一个简单的任务来完成 - 制作JSON.Net的异步分支。但问题是,这需要很长时间 - 任何人都可以节省大约80个小时的时间?如果不是更多? – Todd 2015-04-24 12:08:32