-1

我想为 BlackBerry 创建一个简单的 json 解析器进行测试。我找到了这个例子,并按如下方式实现我的代码

import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.util.Vector;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import org.json.me.JSONArray;
import org.json.me.JSONObject;
import net.rim.device.api.ui.component.Dialog;
import net.rim.device.api.ui.container.MainScreen;


public final class MyScreen extends MainScreen
{
HttpConnection conn = null;
InputStream in = null;
String _response = null;
Vector _adBeanVector=null;
int code;
public MyScreen()
{             
    setTitle("MyTitle");
    try 
    {
    StringBuffer url=new StringBuffer().append("http://codeincloud.tk/json_android_example.php");
    conn = (HttpConnection) Connector.open(url.toString(), Connector.READ);
    conn.setRequestMethod(HttpConnection.GET);

    code = conn.getResponseCode();
    if (code == HttpConnection.HTTP_OK) {
    in = conn.openInputStream();
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    byte[] buffer = new byte[in.available()];
    int len = 0;
    while (-1 != (len = in.read(buffer))) {
    out.write(buffer); 
    }
    out.flush();
    _response = new String(out.toByteArray());
    JSONObject resObject=new JSONObject(_response);
    String _key =resObject.getString("Insert Json Key");

    _adBeanVector = new Vector();
    JSONArray newsArray = resObject.getJSONArray("Insert Json Array Key");
    if(newsArray.length() > 0)
    {
    for (int i=0 ;i <  newsArray.length() ; i++) 
    {
    Vector _adElementsVector=new Vector();
    JSONObject newsObj = newsArray.getJSONObject(i);
    _adElementsVector.addElement(newsObj.getString("message"));
    //_adElementsVector.addElement(newsObj.getString("Insert Json Array Element Key2"));
    _adBeanVector.addElement(_adElementsVector);
    }
    }
    if (out != null){
    out.close();
    }
    if (in != null){
    in.close();
    }
    if (conn != null){
    conn.close();
    }
    }

    } catch (Exception e) 
    {
    Dialog.alert(e.getMessage());
    }
}
}

但我不能为我的目的修改它。任何人都可以帮助我修改此代码示例以访问json。我对这个主题领域非常陌生。

先感谢您。

4

1 回答 1

2

尝试这个 -

 JSONObject resObject=new JSONObject(_response);
 String _name=resObject.getString("name"); //This will get the result as Froyo
 String _version=resObject.getString("version");  //This will get the result as Android 2.2   
 Dialo.alert("Name : "+_name+" and Version : "+_version);
于 2013-05-10T05:10:16.420 回答