[英]How to parse JSON object in Java:
我正在嘗試解析為Java中的JSON對象。 我正在使用dojo.xhrPost()
方法發布json鍵值對象,如下所示:
dojo.xhrPost({
url: /esturl/,
handleAs : "text",
content : {INST1 : {"0001" : "aa"},
INST2 : {"0002" : "bb"},
INST3 : {"0003" : "cc"}},
load : load(data),
error : error
});
現在,我從請求上下文中讀取此發布數據:
Map<String, String[]> paramMap = requestContext.getParameterMap();
當我循環打印時:
Iterator it = paramMap.entrySet().iterator();
while(it.hasnext()){
Map.entry pairs = (Map.Entry) it.next();
System.out.println(pairs.getKey());
System.out.println(pairs.getkValue());
}
這使我返回:
INST1
[Ljava.lang.String;@1b4cef
INST2
[Ljava.lang.String;@5801d
像明智的人一樣,但我應該得到像
INST1 : {"0001" : "aa"}, INST2 : {"0002" : "bb"}, INST3 : {"0003" : "cc"}},
任何指導將不勝感激。
更新資料
當我嘗試使用以下方法獲取一個參數的值時
String[] X = requestContext.getParameters{"INST1"};
if (X != null){
System.out.println(X.length);
System.out.println(X[0]);
System.out.println(X[0].length);
}
然后得到:
1
[object Object]
[object Object]
問:現在如何獲取INST1 : {"0001" : "aa"}
類的Object的實際值,而不是[object Object]?
您可以使用此修改后的JSONObject類 ,通過構造函數傳遞原始JSON代碼,也可以創建(創建新對象並稍后分配JSON內容。)並使用內置的get方法。 在此處查看完整的javadoc。
作為道場文檔中給出這里你設置對象將被讀作名1 =值。 因此,在您的情況下,可能像INST1 = 0001,INST1 = aa這樣傳遞變量。
您可以嘗試在以下INST1 : '{"0001" : "aa"}'
行中使用'content'的語法INST1 : '{"0001" : "aa"}'
或INST1 : "{\\"0001\\" : \\"aa\\"}"
以便INST1具有1個明確的值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.