2012-08-13 54 views
0

您好我有一个JSON输入文件如下,Java对象从JSON输入文件

{'Latitude':'20', 
'coolness':2.0, 
'altitude':39000, 
'pilot':{'firstName':'Buzz', 
      'lastName':'Aldrin'}, 
'mission':'apollo 11'} 

如何创建从JSON输入文件的Java对象。

感谢

+0

谷歌已为此制作了一个库:http://code.google.com/p/google-gson/ – Niklas 2012-08-13 09:03:45

+0

转到http://www.json.org/并查看“Java”子部分。 – adarshr 2012-08-13 09:08:42

回答

1

可以使用非常简单GSON库,与Gson#fromJson()方法。

下面是一个例子:Converting JSON to Java

+0

如果输入文件可能是任何JSON文件(无特殊格式),那么如何解析它? – user1321824 2012-08-13 09:29:32

+0

然后你必须打开并阅读文件 – 2012-08-13 09:46:53

+0

好吧我正在阅读打开和阅读文件,但如何动态生成数据类,如示例中所示(将JSON转换为Java) – user1321824 2012-08-13 10:16:57

1

有超过一个的API可以使用。最简单的是JSONObject

只需做到以下几点:

JSONObject o = new JSONObject(jsonString); 
int alt = o.getInt("altitude"); 
.... 

有每种类型getXXX方法。它基本上将对象存储为地图。这是一个缓慢的API。

您可以使用Google的Gson,这是一个优雅和更好的库 - 需要比JSONObject稍多的工作。如果您真的关心速度,请使用Jackson