我需要使用 Java 中的 Gson 库读取 Json 文件。首先我不明白 Json 文件是什么,我有以下内容:(抱歉缺少空格,它是这样粘贴的)
{
"initialStorage": [
{shoeType: "red-boots", amount: 10},
{shoeType: "green-flip-flops", amount: 7}
],
services: {
time: {
speed: 1000,
duration: 24
},
manager: {
discountSchedule: [
{shoeType: "red-boots", amount: 1, tick: 3},
{shoeType: "green-flip-flops", amount: 3, tick:10}
]
},
factories: 3,
sellers: 2,
customers: [
{
name: "Bruria",
wishList: ["green-flip-flops"],
purchaseSchedule: [
{shoeType: "red-boots", tick: 3}
]
},
{
name: "Shraga",
wishList: [],
purchaseSchedule: [
{shoeType: "green-flip-flops", tick: 12}
]
}
]
}
}
- 我是否只是将它放在 java 中作为.. String json = "-pasting it here-"?什么是“Json”文件,它是某种我必须读取为 nameofffile.json 的文件吗?
- 如何使用 Gson 读取它?我对解释它的 YouTube 视频了解不多。
以下链接以更舒适的方式显示给定的 Json 输入: http://i.stack.imgur.com/r0cTs.png
JSON 是 JavaScript Object Notation 的缩写,是一种以有组织、易于访问的方式存储信息的方式。简而言之,它为我们提供了人类可读的数据集合,我们可以以真正合乎逻辑的方式访问这些数据。
举个简单的例子,关于我的信息可以用JSON写成如下:
{
"age" : "24",
"hometown" : "Missoula, MT",
"gender" : "male"
}
要使用 Gson
在 java 中读取 Json
文件,您需要使用 Gson图书馆。
Gson 是一个 Java 库,可用于将 Java 对象转换为其 JSON 表示形式。它还可用于将 JSON 字符串转换为等效的 Java 对象。 Gson 可以处理任意 Java 对象,包括您没有源代码的预先存在的对象。
Demo : 从“file.json”中读取数据,转换回对象并显示。
package com.mkyong.core;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import com.google.gson.Gson;
public class GsonExample {
public static void main(String[] args) {
Gson gson = new Gson();
try {
BufferedReader br = new BufferedReader(
new FileReader("c:\\file.json"));
//convert the json string back to object
DataObject obj = gson.fromJson(br, DataObject.class);
System.out.println(obj);
} catch (IOException e) {
e.printStackTrace();
}
}
}