gpt4 book ai didi

android - 将 JArray 转换为要写入 JSON 文件的字符串

转载 作者:搜寻专家 更新时间:2023-11-01 08:54:28 26 4
gpt4 key购买 nike

因此,我在设备中有一个 JSON 文件可供读取和写入。我在 Xamarin Android 上使用 JSON.NET。我从文件中读取如下:

FileStream jsonfile = new FileStream(root + "/data.json", FileMode.Open);
string content;
using (StreamReader sr = new StreamReader (jsonfile))
content = sr.ReadToEnd ();
var objects = JArray.Parse (content);

这样,我就不会为 JSON 对象创建类。它会自动解析为 JArray 对象。然后,我可以像这样轻松直接地读取数据:

foreach (JObject obj in objects) {
Console.WriteLine(obj.Property("name").Value.ToString());
}

但是当涉及到将数据写入 JSON 文件时。正如我的逻辑所暗示的那样,我向后尝试了这个过程:

using (StreamWriter sw = new StreamWriter (jsonfile))
sw.Write(JsonConvert.ToString(objects));

好吧,它就是行不通。错误清楚地表明“无法写入流文件。”

我是这方面的新手。所以可能我做错了什么。问题是,我要读取的数据非常简单(即使它是 JArray),我正在尝试我能找到的最简单的方法。

我在这里错过了什么?

最佳答案

使用指定文件权限的 FileStream 重载并使用 FileAccess.ReadWrite。

new FileStream(root + "/data.json", FileMode.Open, FileAccess.ReadWrite);

关于android - 将 JArray 转换为要写入 JSON 文件的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20061145/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com