{
"city" : "THAYNE",
"loc" : [
-111.011354,
42.933026
],
"pop" : 505,
"state" : "WY",
"_id" : "83127"
}
我有这个json语法,我想将它解析为Java对象。 首先,我创建了一个String数组,以保存.json文件的每一行。 但毕竟我不知道,我该怎么做。
答案 0 :(得分:3)
###Gson is easy to learn and implement, what we need to know are following two methods
toJson() – Convert Java object to JSON format
fromJson() – Convert JSON into Java object ###
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();
}
}
}
答案 1 :(得分:0)
我会因为建议使用图书馆而得到推荐,但是使用Gson:https://code.google.com/p/google-gson/
创建一个JsonParser
对象并从那里开始。到目前为止最容易。
此外,您不需要在stringarray中输入,使用整个JSON创建一个String
。
试试这个:
JsonParser parser = new JsonParser();
try
{
JsonElement json = parser.parse("your json string");
JsonObject obj = json.getAsJsonObject();
// Now you have the JSon object, get any element from it now.
JsonElement city = obj.get("city");
return city.getAsString();
}
catch ( JsonSyntaxException e ) {
}
catch ( JsonParseException e ) {
}
答案 2 :(得分:0)
您可以使用GSON - 可用于将Java对象转换为JSON表示的Java库,反之亦然