0

我正在尝试使用代码或脚本编辑“.json”文件以附加到安装程序。

我需要它在 .json 配置文件中添加几行,但我还没有找到任何代码或在线教程来说明如何做到这一点。

我尝试寻找将行添加到普通 .txt 文件的方法,但也没有运气。

我在网上找到的是附加的,但这不是我需要的。

也许一种搜索文件的某个点以将指针移动到然后添加行的方法?

我会一点 Java,但不会使用其他编码语言。

有没有办法在 Java 或一些小脚本中做到这一点?

4

3 回答 3

1

是的,有办法。这里有一些伪代码给你这个概念。

JSONObject json = fileRead("myfile.json")
JSONObject objToAdd = new JSONObject();
json.add(objToAdd);

fileWrite(json);
于 2013-10-17T17:45:05.600 回答
0

使用 json 解析器库,例如json-simple。首先读取内容,将其传递给解析器并创建一个 Json 对象。这是一个例子

 JSONObject obj=new JSONObject();
  obj.put("name","foo");
  obj.put("num",new Integer(100));
  obj.put("balance",new Double(1000.21));
  obj.put("is_vip",new Boolean(true));
  obj.put("nickname",null);
  StringWriter out = new StringWriter();
  obj.writeJSONString(out);   // your writer object, i.e., FileWriter
  String jsonText = out.toString();
  System.out.print(jsonText);

好吧,您也可以将一个 JsonObject 添加到另一个jsonObj1.add(jsonObj)

于 2013-10-17T17:50:59.157 回答
0

如果您使用 Java 7 并且您的 Json 不是很大,这是添加行的简单方法:

List<String> lines = Files.readAllLines(Paths.get("C:\\Automation1\\some.json"), StandardCharsets.UTF_8);
lines.add(6, "{ \"abc\": 123}"); // as example add data to row 6
Files.write(Paths.get("C:\\Automation1\\some.json"), lines, StandardCharsets.UTF_8);

但这种技术很难维持。

我建议您将 Json 转换为 Object,并在编辑 Object 后将其转换回 Json 文件

于 2013-10-17T17:43:35.903 回答