- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
好的,我得到了几个 JSONArray,我已将它们作为 JSONobject 添加到 JSONArray 并存储在文件中。
这是我的 json 语句:
{
"wines": [
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 0 is a very sweet red wine.",
"name": "Wine number: 0",
"barcode": 1234567890123,
"year": 1982,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 1 is a very sweet red wine.",
"name": "Wine number: 1",
"barcode": 1234568019470,
"year": 1983,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 2 is a very sweet red wine.",
"name": "Wine number: 2",
"barcode": 1234568148817,
"year": 1984,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 3 is a very sweet red wine.",
"name": "Wine number: 3",
"barcode": 1234568278164,
"year": 1985,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 4 is a very sweet red wine.",
"name": "Wine number: 4",
"barcode": 1234568407511,
"year": 1986,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 5 is a very sweet red wine.",
"name": "Wine number: 5",
"barcode": 1234568536858,
"year": 1987,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 6 is a very sweet red wine.",
"name": "Wine number: 6",
"barcode": 1234568666205,
"year": 1988,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 7 is a very sweet red wine.",
"name": "Wine number: 7",
"barcode": 1234568795552,
"year": 1989,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 8 is a very sweet red wine.",
"name": "Wine number: 8",
"barcode": 1234568924899,
"year": 1990,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 9 is a very sweet red wine.",
"name": "Wine number: 9",
"barcode": 1234569054246,
"year": 1991,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
}
],
"reviewWine": [
{
"reviewIDWine": 0,
"wineID": 1234567890123,
"reviewWine": "This wine is not that sweet at all.ksbdksbcksdbcksdcbsdcbsdc,bskdcbksdckscbs ,scscb",
"dateReviewWine": 1380876068189,
"titleReviewWine": "Not sweet"
},
{
"reviewIDWine": 1,
"wineID": 56121,
"reviewWine": "This wine is not that sweet at all.",
"dateReviewWine": 1340826068189,
"titleReviewWine": "Not sweet"
},
{
"reviewIDWine": 2,
"wineID": 56162,
"reviewWine": "This wine is not that sweet at all.",
"dateReviewWine": 1386876068189,
"titleReviewWine": "Not sweet"
}
],
"reviewStore": [
{
"reviewIDStore": 0,
"reviewStoreID": 1234567890123,
"reviewStore": "This wine is not that sweet at all.ksbdksbcksdbcksdcbsdcbsdc,bskdcbksdckscbs ,scscb",
"dateReviewStore": 1380876068189,
"TitleReviewStore": "Not sweet"
},
{
"reviewIDStore": 1,
"reviewStoreID": 56121,
"reviewStore": "This wine is not that sweet at all.",
"dateReviewStore": 1340826068189,
"TitleReviewStore": "Not sweet"
},
{
"reviewIDStore": 2,
"reviewStoreID": 56162,
"reviewStore": "This wine is not that sweet at all.",
"dateReviewStore": 1386876068189,
"TitleReviewStore": "Not sweet"
}
],
"ratingWine": [
{
"ratingIDWine": 0,
"wineID": 1234567890123,
"ratingWine": 9,
"dateAddedRatingWine": 1380876008180,
"userIDAddedRatingWine": 4
},
{
"ratingID": 1,
"wineID": 56162,
"ratingWine": 9,
"dateAddedRatingWine": 1300876068189,
"userIDAddedRatingWine": 4
},
{
"ratingID": 2,
"wineID": 1234567890123,
"ratingWine": 9,
"dateAddedRatingWine": 1380800068189,
"userIDAddedRatingWine": 4
}
],
"user": [
{
"userID": 0,
"userName": "test0",
"password": "test0",
"email": "cyber@gmail.com"
},
{
"userID": 1,
"userName": "test1",
"password": "test1",
"email": "claw@gmail.com"
},
{
"userID": 2,
"userName": "test2",
"password": "test2",
"email": "cyber2k@gmail.com"
},
{
"userID": 3,
"userName": "test3",
"password": "test3",
"email": "cyber2000@gmail.com"
}
],
"store": [
{
"storeID": 0,
"storeName": "Edah helmond",
"city": "helmond",
"streetName": "fretlaan",
"houseNumber": "90",
"country":"Netherlands"
},
{
"storeID": 1,
"storeName": "ah helmond",
"city": "helmond",
"streetName": "de byrdstraat",
"houseNumber": "9c",
"country":"Netherlands"
},
{
"storeID": 2,
"storeName": "Edah eindhoven",
"city": "eindhoven",
"streetName": "de haag",
"houseNumber": "90a",
"country":"Netherlands"
},
{
"storeID": 3,
"storeName": "Edah eden",
"city": "eden",
"streetName": "de laan",
"houseNumber": "10",
"country":"Netherlands"
},
{
"storeID": 4,
"storeName": "ah neunen",
"city": "neunen",
"streetName": "de haaglaan",
"houseNumber": "9",
"country":"Netherlands"
}
],
"wineStoreRelation": [
{
"wineID": 0,
"storeID": 2,
"price": "4.59"
},
{
"wineID": 2,
"storeID": 1,
"price": "13.98"
},
{
"wineID": 2,
"storeID": 2,
"price": "3.55"
},
{
"wineID": 1,
"storeID": 1,
"price": "3.50"
},
{
"wineID": 0,
"storeID": 1,
"price": "6.50"
},
{
"wineID": 1,
"storeID": 0,
"price": "3.50"
}
]
}
这是我添加数组以创建文件的代码:
public void createJSONExampleDataFile(JSONArray jArray) {
File f = new File(fileJSON);
f.delete();
if (!f.exists()) {
try {
FileWriter fos = new FileWriter(f);
fos.write(jArray.toString());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
} else {
try {
f.delete();
FileWriter fos = new FileWriter(f);
fos.write(jArray.toString());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
public JSONArray createJSONExampleData() {
JSONArray ar = new JSONArray();
ar.put(createJSONWineExampleData());
ar.put(createJSONReviewExampleData());
return ar;
}
public JSONObject createJSONWineExampleData() {
winesJSONArray = new JSONArray();
JSONObject o= new JSONObject();
for (int i = 0; i < 10; i++) {
jObj = new JSONObject();
try {
jObj.put(JSON_WINE_BARCODE, Long.valueOf((1234567890123L + (i * 129347))));
jObj.put(JSON_WINE_BARCODETYPE, "EAN13");
jObj.put(JSON_WINE_NAME, "Wine number: " + i);
jObj.put(JSON_WINE_YEAR, (1982 + i));
jObj.put(JSON_WINE_COUNTRY, "Netherlands");
jObj.put(JSON_WINE_TASTE, "Sweet");
jObj.put(JSON_WINE_COLOR, "Red");
jObj.put(JSON_WINE_DESCRIPTION, "This wine number " + i + " is a very sweet red wine.");
jObj.put(JSON_WINE_SPARKLING, 1);
jObj.put(JSON_WINE_BIOLOGIC, 0);
System.out.println(jObj.toString());
} catch (JSONException e) {
e.printStackTrace();
}
winesJSONArray.put(jObj);
}
try {
o.put(JSON_ARRAY_WINE, winesJSONArray);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return o;
}
public JSONObject createJSONReviewExampleData() {
reviewWineJSONArray = new JSONArray();
JSONObject o= new JSONObject();
for (int i = 0; i < 5; i++) {
jObj = new JSONObject();
try {
jObj.put(JSON_REVIEWWINE_REVIEWID, 1+i);
jObj.put(JSON_REVIEWWINE_WINEID, Long.valueOf((1234567890123L + (i * 129347))));
jObj.put(JSON_REVIEWWINE_REVIEW, i);
jObj.put(JSON_REVIEWWINE_DATE, 1340826068189L-(i*12999823));
jObj.put(JSON_REVIEWWINE_TITLE, "SWeet red: "+i);
System.out.println(jObj.toString());
} catch (JSONException e) {
e.printStackTrace();
}
reviewWineJSONArray.put(jObj);
}
try {
o.put(JSON_ARRAY_REVIEWWINE, reviewWineJSONArray);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return o;
}
这是我尝试使用它从中获取数组之一的代码:
public JSONObject getJSONObjectWineFromJSONObjectArray(JSONObject jsonOb, String barcode) {
JSONArray jsonAr = new JSONArray();
try {
jsonAr = jsonOb.getJSONArray(JSON_ARRAY_WINE);
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
for (int i = 0; i < jsonAr.length(); i++) {
try {
jsonAr.getJSONObject(i);
if (jsonAr.getJSONObject(i).getString(JSON_WINE_BARCODE).equals(barcode)) {
return jsonAr.getJSONObject(i);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
public JSONArray getJSONArrayWinesFromFile() {
try {
is = new FileInputStream(new File(fileJSON));
BufferedReader reader = new BufferedReader(
new InputStreamReader(is));
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
json = sb.toString();
System.out.println("Dit is de string: "+json.toString());
} catch (FileNotFoundException e) {
Log.e("File Error", "Error getting file result " + e.toString());
} catch (Exception e) {
Log.e("Buffer Error", "Error converting result " + e.toString());
}
try {
JSONObject jOb = new JSONObject(json);
winesJSONArray = jOb.getJSONArray(JSON_ARRAY_WINE);
System.out.println("Lets see: "+winesJSONArray.toString(1));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return winesJSONArray;
}
这是我从中得到的 logcat:
10-10 11:50:25.298: W/System.err(3548): org.json.JSONException: Value [{"wines":[{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 0 is a very sweet red wine.","name":"Wine number: 0","barcode":1234567890123,"year":1982,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 1 is a very sweet red wine.","name":"Wine number: 1","barcode":1234568019470,"year":1983,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 2 is a very sweet red wine.","name":"Wine number: 2","barcode":1234568148817,"year":1984,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 3 is a very sweet red wine.","name":"Wine number: 3","barcode":1234568278164,"year":1985,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 4 is a very sweet red wine.","name":"Wine number: 4","barcode":1234568407511,"year":1986,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 5 is a very sweet red wine.","name":"Wine number: 5","barcode":1234568536858,"year":1987,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 6 is a very sweet red wine.","name":"Wine number: 6","barcode":1234568666205,"year":1988,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 7 is a very sweet red wine.","name":"Wine number: 7","barcode":1234568795552,"year":1989,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 8 is a very sweet red wine.","name":"Wine number: 8","barcode":1234568924899,"year":1990,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 9 is a very sweet red wine.","name":"Wine number: 9","barcode":1234569054246,"year":1991,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"}]},{"reviewWine":[{"reviewIDWine":1,"dateReviewWine":1340826068189,"wineId":1234567890123,"titleReviewWine":"SWeet red: 0","reviewWine":0},{"reviewIDWine":2,"dateReviewWine":1340813068366,"wineId":1234568019470,"titleReviewWine":"SWeet red: 1","reviewWine":1},{"reviewIDWine":3,"dateReviewWine":1340800068543,"wineId":1234568148817,"titleReviewWine":"SWeet red: 2","reviewWine":2},{"reviewIDWine":4,"dateReviewWine":1340787068720,"wineId":1234568278164,"titleReviewWine":"SWeet red: 3","reviewWine":3},{"reviewIDWine":5,"dateReviewWine":1340774068897,"wineId":1234568407511,"titleReviewWine":"SWeet red: 4","reviewWine":4}]}] of type org.json.JSONArray cannot be converted to JSONObject
10-10 11:50:25.308: W/System.err(3548): at org.json.JSON.typeMismatch(JSON.java:107)
10-10 11:50:25.308: W/System.err(3548): at org.json.JSONObject.<init>(JSONObject.java:158)
10-10 11:50:25.308: W/System.err(3548): at org.json.JSONObject.<init>(JSONObject.java:171)
10-10 11:50:25.308: W/System.err(3548): at com.moyoweb.winescanner.JSONParser.getJSONArrayWinesFromFile(JSONParser.java:176)
10-10 11:50:25.308: W/System.err(3548): at com.moyoweb.winescanner.ListWineView.onCreate(ListWineView.java:58)
10-10 11:50:25.308: W/System.err(3548): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072)
10-10 11:50:25.308: W/System.err(3548): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1836)
10-10 11:50:25.308: W/System.err(3548): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1893)
10-10 11:50:25.308: W/System.err(3548): at android.app.ActivityThread.access$1500(ActivityThread.java:135)
10-10 11:50:25.308: W/System.err(3548): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1054)
10-10 11:50:25.308: W/System.err(3548): at android.os.Handler.dispatchMessage(Handler.java:99)
10-10 11:50:25.308: W/System.err(3548): at android.os.Looper.loop(Looper.java:150)
10-10 11:50:25.308: W/System.err(3548): at android.app.ActivityThread.main(ActivityThread.java:4385)
10-10 11:50:25.308: W/System.err(3548): at java.lang.reflect.Method.invokeNative(Native Method)
10-10 11:50:25.308: W/System.err(3548): at java.lang.reflect.Method.invoke(Method.java:507)
10-10 11:50:25.308: W/System.err(3548): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
10-10 11:50:25.308: W/System.err(3548): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
10-10 11:50:25.308: W/System.err(3548): at dalvik.system.NativeStart.main(Native Method)
10-10 11:50:25.318: D/AndroidRuntime(3548): Shutting down VM
10-10 11:50:25.318: W/dalvikvm(3548): threadid=1: thread exiting with uncaught exception (group=0x4001d5a0)
10-10 11:50:25.318: E/AndroidRuntime(3548): FATAL EXCEPTION: main
10-10 11:50:25.318: E/AndroidRuntime(3548): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.moyoweb.winescanner/com.moyoweb.winescanner.ListWineView}: java.lang.NullPointerException
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1872)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1893)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.app.ActivityThread.access$1500(ActivityThread.java:135)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1054)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.os.Handler.dispatchMessage(Handler.java:99)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.os.Looper.loop(Looper.java:150)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.app.ActivityThread.main(ActivityThread.java:4385)
10-10 11:50:25.318: E/AndroidRuntime(3548): at java.lang.reflect.Method.invokeNative(Native Method)
10-10 11:50:25.318: E/AndroidRuntime(3548): at java.lang.reflect.Method.invoke(Method.java:507)
10-10 11:50:25.318: E/AndroidRuntime(3548): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
10-10 11:50:25.318: E/AndroidRuntime(3548): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
10-10 11:50:25.318: E/AndroidRuntime(3548): at dalvik.system.NativeStart.main(Native Method)
10-10 11:50:25.318: E/AndroidRuntime(3548): Caused by: java.lang.NullPointerException
10-10 11:50:25.318: E/AndroidRuntime(3548): at com.moyoweb.winescanner.Wine.fromJSON(Wine.java:70)
10-10 11:50:25.318: E/AndroidRuntime(3548): at com.moyoweb.winescanner.ListWineView.onCreate(ListWineView.java:58)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072)
10-10 11:50:25.318: E/AndroidRuntime(3548): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1836)
10-10 11:50:25.318: E/AndroidRuntime(3548): ... 11 more
10-10 11:50:25.258: I/System.out(3548): Dit is de string: [{"wines":[{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 0 is a very sweet red wine.","name":"Wine number: 0","barcode":1234567890123,"year":1982,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 1 is a very sweet red wine.","name":"Wine number: 1","barcode":1234568019470,"year":1983,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 2 is a very sweet red wine.","name":"Wine number: 2","barcode":1234568148817,"year":1984,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 3 is a very sweet red wine.","name":"Wine number: 3","barcode":1234568278164,"year":1985,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 4 is a very sweet red wine.","name":"Wine number: 4","barcode":1234568407511,"year":1986,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 5 is a very sweet red wine.","name":"Wine number: 5","barcode":1234568536858,"year":1987,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 6 is a very sweet red wine.","name":"Wine number: 6","barcode":1234568666205,"year":1988,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 7 is a very sweet red wine.","name":"Wine number: 7","barcode":1234568795552,"year":1989,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 8 is a very sweet red wine.","name":"Wine number: 8","barcode":1234568924899,"year":1990,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"},{"biologic":0,"sparkling":1,"color":"Red","description":"This wine number 9 is a very sweet red wine.","name":"Wine number: 9","barcode":1234569054246,"year":1991,"barcodeType":"EAN13","taste":"Sweet","country":"Netherlands"}]},{"reviewWine":[{"dateReviewWine":1340826068189,"reviewIDWine":1,"titleReviewWine":"SWeet red: 0","wineId":1234567890123,"reviewWine":0},{"dateReviewWine":1340813068366,"reviewIDWine":2,"titleReviewWine":"SWeet red: 1","wineId":1234568019470,"reviewWine":1},{"dateReviewWine":1340800068543,"reviewIDWine":3,"titleReviewWine":"SWeet red: 2","wineId":1234568148817,"reviewWine":2},{"dateReviewWine":1340787068720,"reviewIDWine":4,"titleReviewWine":"SWeet red: 3","wineId":1234568278164,"reviewWine":3},{"dateReviewWine":1340774068897,"reviewIDWine":5,"titleReviewWine":"SWeet red: 4","wineId":1234568407511,"reviewWine":4}]}]
那是我从文件中得到的字符串,所以我必须把它作为一个对象而不是一个数组保存起来?
So you need to have
JSONArray jr = new JSONArray("jsonstring"); So replace
JSONObject jOb = new JSONObject(json); By
JSONArray jr = new JSONArray(json);
我试过这个:
try {
winesJSONArray = new JSONArray(json);
System.out.println(winesJSONArray.toString());
System.out.println("Lets see: "+winesJSONArray.toString(1));
并得到这个 logcat:
http://pastebin.com/WwZax22H 添加为 pastebin 限制。
最佳答案
根据你的 logcat,你的 json 如下所示
[ // json array node
{ // json object node
"wines": [ // json array wines
{ // json object node
"biologic": 0, // json string
"sparkling": 1,
"color": "Red",
"description": "This wine number 0 is a very sweet red wine.",
"name": "Wine number: 0",
"barcode": 1234567890123,
"year": 1982,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 1 is a very sweet red wine.",
"name": "Wine number: 1",
"barcode": 1234568019470,
"year": 1983,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 2 is a very sweet red wine.",
"name": "Wine number: 2",
"barcode": 1234568148817,
"year": 1984,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 3 is a very sweet red wine.",
"name": "Wine number: 3",
"barcode": 1234568278164,
"year": 1985,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 4 is a very sweet red wine.",
"name": "Wine number: 4",
"barcode": 1234568407511,
"year": 1986,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 5 is a very sweet red wine.",
"name": "Wine number: 5",
"barcode": 1234568536858,
"year": 1987,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 6 is a very sweet red wine.",
"name": "Wine number: 6",
"barcode": 1234568666205,
"year": 1988,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 7 is a very sweet red wine.",
"name": "Wine number: 7",
"barcode": 1234568795552,
"year": 1989,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 8 is a very sweet red wine.",
"name": "Wine number: 8",
"barcode": 1234568924899,
"year": 1990,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
},
{
"biologic": 0,
"sparkling": 1,
"color": "Red",
"description": "This wine number 9 is a very sweet red wine.",
"name": "Wine number: 9",
"barcode": 1234569054246,
"year": 1991,
"barcodeType": "EAN13",
"taste": "Sweet",
"country": "Netherlands"
}
]
},
{
"reviewWine": [
{
"reviewIDWine": 1,
"dateReviewWine": 1340826068189,
"wineId": 1234567890123,
"titleReviewWine": "SWeet red: 0",
"reviewWine": 0
},
{
"reviewIDWine": 2,
"dateReviewWine": 1340813068366,
"wineId": 1234568019470,
"titleReviewWine": "SWeet red: 1",
"reviewWine": 1
},
{
"reviewIDWine": 3,
"dateReviewWine": 1340800068543,
"wineId": 1234568148817,
"titleReviewWine": "SWeet red: 2",
"reviewWine": 2
},
{
"reviewIDWine": 4,
"dateReviewWine": 1340787068720,
"wineId": 1234568278164,
"titleReviewWine": "SWeet red: 3",
"reviewWine": 3
},
{
"reviewIDWine": 5,
"dateReviewWine": 1340774068897,
"wineId": 1234568407511,
"titleReviewWine": "SWeet red: 4",
"reviewWine": 4
}
]
}
]
[
代表json数组节点
{
代表json对象节点
所以你需要有
JSONArray jr = new JSONArray("jsonstring");
所以替换
JSONObject jOb = new JSONObject(json);
通过
JSONArray jr = new JSONArray(json);
关于android - jsonarray 无法转换为 jsonobject logcat 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19292558/
我正在使用网络服务请求直方图数据。数据是数组中的一组数组: [[1375056000000,23.284713745117],[1375142400000,3.809531211853], [1375
这是我的 json 文件的相关部分: "categories": [ [ "Belgian Restaurant", "belgian" ],
我目前很困惑,为什么我不能在我的 Android 应用程序中从 JSONArray 中提取 JSONArray。下面给出了一个示例和我的源代码片段。 //The JSON { "cur
我正在尝试解析 JSONObject。 这个 JSONObject 中有一个 JSONArray,它在 JSONArray 中还有另一个 JSONArray。 我试图解析的 json 形式如下。 {
我正在尝试解析对象数据列表中的 JSON 数组 payment_details。 在这里,我已经成功解析了回收站 View 中调用的数据数组,但我无法调用 payment_details 数组。 适配
我正在寻找一个选项,可以将多个值添加到 JSONArray 并将其添加到另一个 JSONArray 中,而无需创建多个变量。例如: JSONArray array1 = new JSONArr
我遇到过一种情况,org.json.JSONArray 对象非常大,这最终会导致延迟和其他问题。因此,我们决定将 JSONArray 分割成更小的 block 。例如,如果 JSONArray 是这样
您好,我正在尝试在另一个 json 数组中解析一个 json 数组。帮我解决这个问题。 我的 Json 数组是 "results":[ { "percentcompleted"
我正在使用 Gson用于解析 json 响应。我需要在 JsonArray 中解析 JSONArry.. 我的回答是.. { "message": "Retreive sucessfully", "f
@GET @Produces("application/json") public Response GetAll() throws JSONException{ tblCategoryDao
我从服务器获取以下 json: { "Data": [ { "Record": [ " d11", "d12"
我正在使用 ajax 将 json 对象从 javascript 传递到 java servlet。 var jsonObj = JSON.stringify(objArray); //Then I
我需要获取作为“结果”内部数组的“示例”数据 JSON FILE 并将其附加到字符串。最简单的方法是什么? 这就是我得到“定义”的方式 private JSONObject queryResults;
我需要从 JSONArray 获取 JSONArray: JSONParser parser = new JSONParser(); JSONObject jObject=(J
我有一个 jsonArray 响应。我需要阅读此响应,其中包含 3 个 jsonArray。 这是 json 响应。这是一个 GET 请求并通过 Volley 请求发送。 [ "0x9000",
在此 Json 响应中,如何使用 Java 访问“smallImageUrls”并获取图像 url? 似乎“smallImageUrls”是“匹配”jsonarray 中的一个数组。如果我错了,请有人
这个问题在这里已经有了答案: Convert string to JSON array (10 个答案) 关闭 5 年前。 如何正确地将此字符串转换为 jsonArray? { "myArr
是否可以从较新的 EJB JSON 库转换为较旧的 org.json 库,而无需依赖 org.json.simple 或 GSON? 在下面的例子中,“buttons”是一个填充的 JsonArr
如何从jsonarray获取jsonarray? 我试过的代码。 for(loop) List stringList = new ArrayLis
我目前是 Json 新手,遇到了一个问题。我搜索了很多但找不到答案! 我从 json url 获取名称列表。名称可以在此 json 文件中重复,但我只想将它们的一条记录保留到我称为“arr”的新数组中
我是一名优秀的程序员,十分优秀!