您的位置:首页 > 理论基础 > 计算机网络

Android 手机端与服务器端通过http交换数据 Json

2011-08-10 17:35 555 查看
Android程序需要与服务器端交换数据,如用户在手机上输入账号及密码信息,手机程序要将输入信息提交要服务器端进行账号验证,返回验证结果。例如手机QQ,登陆完成之后,好友列表还需要从服务器端下载到手机端。这些都需要与后台进行通信。

在我的程序中,是定义用json进行通信。

1、直接从服务器端读取数据, 以文本方式举例

//url通过openStream的方式返回一个inputStream的数据流
URL url = new URL(这里是url地址);
BufferReader br = new BufferReader(new InputStreamReader(url.openStream()));
String content = "";
while((content = br.readline()) != null)
{
System.out.println("------------------content = " + content);
}


2、要提交数据给服务器端,服务器端再返回结果

//用openConnection的方式
//url.openConnection返回URLConnection的对URL url = new URL(这里是url地址);
URLConnection connection = url.openConnection();
InputStream is = connection.getInputStream();
OutputStream os = connection.getOutputStream();
//这时就可以进行读写。

3、Json的创建Json主要是使用JsonObject和JsonArray两种。他们的区别在于: Object是用大括号{}包含起来的,一组一组的键值对; Array是用中括号[]包含的json类型的数组. 创建json对象的方式:

JsonObject json = new JsonObject();
json.put("1", "a");
json.put("2", "b");
// 这样构造的json对象打印出来显示为{"1":"a", "2":"b"}
json转为String:

String string = json.toString()


String转为json:

JsonObject json = new JsonObject(String);



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: