2015-01-04 24 views
-4

我打电话WSDL web服务,并得到以下JSON字符串如何转换这个PHP代码(JSON数组)Java代码在Android

如:

$result = ' 
{ 
"Value": 
[ 
{"Username":"CustomerName1","Password":"123","ResellerID":"888"},{"Username":"CustomerName2","Password":"123orAnyChar","ResellerID":"378"} 
], 
"Error":{"Check":false,"Msg":"No Error!"} 
} 
'; 

如何这个PHP代码转换为Java代码:

示例PHP代码:

$MyArray = json_decode($result, true); 

if (array_key_exists("Error", $MyArray)) { 

    if ($MyArray['Error']['Check'] != true) { 

     foreach ($MyArray['Value'] as $Key => $Val) { 
      echo "Username = ".$Val['Username']." , Pass = ".$Val['Password']." , ResID = ".$Val['ResellerID']."\r\n"; 
     } 

    } 
    else { 
     echo "Error Msg"; 
    } 

} 

注:眼前这个PHP代码块转换成Java,USI NG样品JSON字符串

感谢

+0

见http://stackoverflow.com/questions/1927885/decode-json-data-in-java和http: //stackoverflow.com/questions/9256669/java-built-in-data-parser-for-json-or-xml-or-else – gknicker

回答

0

回答我的问题是:

try { 

      // result is json string 

      Boolean ErrStatus = true; 

      JSONObject CheckErr = new JSONObject(result).getJSONObject("Error"); 
      ErrStatus = CheckErr.getBoolean("Check"); 

      String Msg = ""; 
      if (ErrStatus == false) { 

       JSONArray jArray = new JSONObject(result).getJSONArray("Value"); 
       for (int i = 0; i < jArray.length(); i++) { 
        JSONObject json = jArray.getJSONObject(i); 
        Msg = Msg + "Username : " + json.getString("Username") + "\n" + "Password : " + json.getString("Password") + "\n\n"; 
       } 

       Msg = "Info correct"; 

      } 
      else { 
       Msg = CheckErr.getString("Msg"); 
      } 


      txtLogin.setText(s); 

     } 
     catch (Exception e) { 
      Log.i("WS", "Error JSON"); 
     }