我有一個很大的JSON文件,如下所示。JSON文件解析到Java Web程序中的數據庫
[{"id":0,"name":"Mrs. Tess Goyette","priceRange":{"min":86,"max":87},"requirements":["close to transport","internet","bath","gym"]},..
像智者一樣有999這樣的項目。我想將這些數據發送到MySQL數據庫。還有 與它做一些交易。還有一個這樣的文件,它擁有40個酒店名稱和數據,稱爲住宿。
我無法用java解析這個文件。任何人都可以幫忙嗎?我試圖創建一個JSON對象和數組,但失敗了。 enter code here
任何幫助表示讚賞。
是的,我確定我試過編碼這樣的東西。
public static void main(String[] args) {
JSONParser parser = new JSONParser();
try {
JSONParser parser = new JSONParser();
InputStream is = hoteldemo.class.getResourceAsStream("accommodation.json");
String jsonTxt = IOUtils.toString(is);
JSON json = JSONSerializer.toJSON(jsonTxt);
JSONObject json1 = (JSONObject)JSONSerializer.toJSON(jsonTxt);
JSONObject json2= json1.getJSONObject("menu");
double id = json2.getDouble("id");
String name = json2.getString("name");
int price=json2.getInt("price");
JSONArray jarray=json2.getJSONArray("attributes");
//JSONArray jarray1=json1.getJSONArray("capacity");
int a= json2.size();
for(int i=0;i<json2.size();i++)
{
System.out.println("The id is "+ json2.getDouble("id"));
System.out.println("The name is "+ json2.getString("name"));
System.out.println("The price is "+ json2.getInt("price"));
System.out.println("the size of object is" + a);
}
/* for(int i=0;i<jarray.size();i++)
{
System.out.println("This is ameneities id is " + jarray.getString(i));
}
for(int j=0;j<jarray1.size();j++)
{
System.out.println("This is ameneities id is " + jarray1.getString(j));
}*/
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
但它給我只有一個對象,只有第一個id和下一個id不能在for循環訪問。
少即是多... – nfechner
請告訴我們您的代碼,並告訴我們,[你已經嘗試過(http://mattgemmell.com/2008/12/08/what-have-you-tried /)。 – nfechner
我做了這樣的事情。 –