为了账号安全,请及时绑定邮箱和手机立即绑定

如何将java数据放入json文件?

如何将java数据放入json文件?

HUH函数 2023-02-23 17:02:58
我正在做一个学校项目(创建一个公交网络),他们要求我将数据(公交车编号等)放入一个 json 文件中。你们有给我一个简单的例子吗?我正在使用 eclipse,我尝试使用该org.json.simple.JSONObject;库,但它不起作用。
查看完整描述

4 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

Jackson是使用 Java 读写 JSON 的事实上的标准库。它还可以用于读/写 XML、YAML 和其他格式。

网上有很多关于如何使用Jackson的教程,比如http://www.studytrails.com/java/json/jackson-create-json/

一般用法:

  • 创建/配置一个ObjectMapper

  • 创建您的数据 bean,并可选择使用 Jackson 注释对它们进行注释以微调序列化

  • 使用对象映射器序列化/反序列化您的 bean。

复杂的示例还展示了如何从/到其他格式序列化,以及如何使用自定义序列化: https://github.com/pwalser75/json-xml-yaml-test


查看完整回答
反对 回复 2023-02-23
?
慕侠2389804

TA贡献1719条经验 获得超6个赞

您可以查看Java – 写入文件如何使用 Java 创建文件并写入文件?

使用 POJO:

public class Data {


    private final String name;

    private final String id;


    public Data(final String name, final String id) {

        this.name = name;

        this.id = id;

    }


    public String getName() {

        return name;

    }


    public String getId() {

        return id;

    }

}

此代码使用 Jackson 和ObjectMapper:


ObjectMapper objectMapper = new ObjectMapper();

Data data = new Data("abc", "123");

String jsonData = objectMapper.writeValueAsString(data);

Path path = Paths.get("myFile");

Files.write(path, jsonData.getBytes(StandardCharsets.UTF_8));


查看完整回答
反对 回复 2023-02-23
?
DIEA

TA贡献1820条经验 获得超2个赞

如果您参考此处发布的示例,您可以了解如何处理列表:How to construct JSON data in Java

您也可以只将 ArrayList 作为值而不是字符串数组。杰克逊会为你做剩下的。


查看完整回答
反对 回复 2023-02-23
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

这是一个 file1.txt 内容:


{

"Name": "crunchify.com",

"Author": "App Shah",

"Company List": [

    "Compnay: eBay",

    "Compnay: Paypal",

    "Compnay: Google"

]

}

Java代码:


    package com.crunchify.tutorials;


    import java.io.FileWriter;

    import java.io.IOException;


    import org.json.simple.JSONArray;

    import org.json.simple.JSONObject;




    public class CrunchifyJSONFileWrite {


    @SuppressWarnings("unchecked")

    public static void main(String[] args) throws IOException {


        JSONObject obj = new JSONObject();

        obj.put("Name", "crunchify.com");

        obj.put("Author", "App Shah");


        JSONArray company = new JSONArray();

        company.add("Compnay: eBay");

        company.add("Compnay: Paypal");

        company.add("Compnay: Google");

        obj.put("Company List", company);


        // try-with-resources statement based on post comment below :)

        try (FileWriter file = new FileWriter("/Users/<username>/Documents/file1.txt")) {

            file.write(obj.toJSONString());

            System.out.println("Successfully Copied JSON Object to File...");

            System.out.println("\nJSON Object: " + obj);

        }

    }

}


查看完整回答
反对 回复 2023-02-23
  • 4 回答
  • 0 关注
  • 279 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信