【问题标题】:How to write JSON inside of java [duplicate]如何在java中编写JSON [重复]
【发布时间】:2017-03-18 21:36:44
【问题描述】:

我有一个 JSON 字符串,我想在 java 中将它写为 JSON 文件(.json)。因为我的最终应用程序需要导入 .json 文件而不是字符串。 (我正在使用 spring 来创建一个 web 应用程序)

这是我的 json 字符串:

String str = "{"polygons": {"landuse": ["__any__"],"building": ["__any__"],"shop": ["__any__"]}}";

我想要一个文件 (str.json) 在我的 java webapp 中不保存到电脑然后导入。

你有这个任务的解决方案吗?

谢谢

【问题讨论】:

  • 这不会编译。请发帖Minimal, Complete, and Verifiable Example
  • 能否请您重新表述一下这个问题?
  • 你能给我一个脚本吗?
  • 不,我们可以/不会你一个脚本。这不是免费(或付费)的代码编写服务。请阅读“What topics can I ask about here?”。此外,我什至不确定您要编写脚本做什么。如果你有一个 JSON 字符串,并且想将它写入 JSON 文件,只需将字符串写入文件即可。

标签: java arrays json web web-applications


【解决方案1】:

为此,您可以使用 GSON,您将使用的类是 JsonWriter 和 FileWriter。

一个例子:

json: {"resource":[{"name":"Node1"}],"literals":[{"literal":["A","B","C","D"]} ]}

然后这样做:

JsonWriter jsonWriter = null;
try {
    jsonWriter = new JsonWriter(new FileWriter("test.json"));
    jsonWriter.beginObject();
    jsonWriter.name("resource");
    jsonWriter.beginArray();
    jsonWriter.beginObject();
    jsonWriter.name("name");
    jsonWriter.value("Node1");
    jsonWriter.endObject();
    jsonWriter.endArray();
    jsonWriter.name("literals");
    jsonWriter.beginArray();
    jsonWriter.beginObject();
    jsonWriter.name("literal");
    jsonWriter.beginArray();
    jsonWriter.value("A");
    jsonWriter.value("B");
    jsonWriter.value("C");
    jsonWriter.value("D");
    jsonWriter.endArray();
    jsonWriter.endObject();
    jsonWriter.endArray();
    jsonWriter.endObject();

希望对你有帮助,再见。

【讨论】:

    猜你喜欢
    • 2012-10-16
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    • 2021-11-10
    • 1970-01-01
    • 2010-10-19
    • 1970-01-01
    • 2021-08-27
    相关资源
    最近更新 更多