json串拼写 key=关键字 value=值 例:登陆串
userString = "eche.lau@gmail.com";
password = "111111";
JSONStringer userInfo = new JSONStringer().object()
.key("email").value(userString)
.key("password").value(password).endObject();
JSONStringer json = new JSONStringer().object().key("request").value(userInfo).endObject();
拼写完成的格式是:
{
request => {
:email => "eche.lau@gmail.com",
:password => "111111"
}
}
发送json格式请求方法
public static JSONObject getJsonRequest(String url, Object json) {
HttpPost request = new HttpPost(url);
String retSrc = null;
JSONObject result = null;
try {
StringEntity se = new StringEntity(json.toString(), HTTP.UTF_8);
//设置类型 编码
se.setContentType("application/json;charset=UTF-8");
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,
"application/json;charset=UTF-8"));
request.setEntity(se);
// 发送请求
HttpResponse httpResponse = new DefaultHttpClient()
.execute(request);
// 得到应答的字符串
retSrc = EntityUtils.toString(httpResponse.getEntity());
// 生成 JSON 对象
result = new JSONObject(retSrc);
} catch (Exception e) {
e.printStackTrace();
}
return result;//返回json对象
}
得到返回json对象并且解析
userRequest = getJsonRequest(Const.URL
+ "/sign_in.json", json);
int status=userRequest.getInt("status");//获取返回状态数字
JSONObject user = userRequest.getJSONObject("user");
int userId = user.getInt("id");//解析int格式
String nickName = user.getString("nickname");//解析string格式
返回格式是:
{
:status => 200,
:user => {
:id => 8,
:nickname => "逐风林羽",
}
}
还有数据类型:
JSONArray users = data.getJSONArray("users");
for (int i = 0; i < users.length(); i++) {
JSONObject user = users.getJSONObject(i);
//然后再向上个例子一样解析user串
}
传输bitmap图片
public static JSONObject UpLoadRes(String url,String param,File bitmap ){
String retSrc = null;
JSONObject result = null;
//设置要访问的地址
HttpPost httpRequestHttpPost = new HttpPost(url);
MultipartEntity multipartEntity = new MultipartEntity(
HttpMultipartMode.BROWSER_COMPATIBLE, null, Charset.forName(HTTP.UTF_8));
ContentBody contentBody = new FileBody(bitmap, "image/jpg");
try {
String newStr = new String(param.getBytes(), "UTF-8");
//添加内容
multipartEntity.addPart("email",new StringBody("eche.lau@gmail.com"));
multipartEntity.addPart("request",new StringBody(newStr, Charset.forName(HTTP.UTF_8)));
multipartEntity.addPart("res", contentBody);
//把要传输的内容放到请求里面
httpRequestHttpPost.setEntity(multipartEntity);
//创建客户端对象
HttpClient httpClient = new DefaultHttpClient();
//执行请求并得到返回结果
HttpResponse httpResponse = httpClient.execute(httpRequestHttpPost);
retSrc = EntityUtils.toString(httpResponse.getEntity());
// 生成 JSON 对象
result = new JSONObject(retSrc);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
分享到:
相关推荐
Retrofit是另一种流行的Android网络库,它允许更优雅地处理网络请求和响应,包括JSON解析。添加依赖: ```groovy implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation '...
总的来说,创建一个Android JSON查看器涉及JSON解析、UI设计、事件监听以及可配置样式等多个方面。通过理解和掌握这些知识点,开发者可以为用户提供更直观、易用的JSON数据查看体验。而借助开源库,可以极大地提高...
在“Android Json 解析demo”项目中,可能包含了创建JSON解析器的代码示例,以及如何在Android Studio中运行和测试这些功能的步骤。你可以通过查看项目中的JsonDemo文件来学习具体的实现细节,包括如何读取网络上的...
在Android开发中,处理网络返回的Json数据主要涉及Json解析和格式化。可以使用Gson或Jackson库进行解析,Retrofit则简化了网络请求的过程。通过GsonBuilder的prettyPrinting功能,我们可以方便地对Json数据进行格式...
总结,Android中的JSON解析包括本地和在线两种方式,都可以使用Android SDK内置的`org.json`包。在实际开发中,根据项目需求,可以选择最合适的解析策略,并确保正确处理各种异常情况,提升用户体验。
然而,在较低版本的Android中,可以借助第三方库,如Google的Gson库,它提供了强大的JSON解析和序列化功能。 `JsonUtils`类中,`parseStudentFromJson`方法展示了如何使用Gson解析JSON字符串。`Gson`类的`fromJson`...
Android JSON解析jar指的是在Android项目中用于解析JSON数据的Java库,通常以.jar文件形式提供。 本主题主要关注的是`gson`库,这是一个由Google提供的强大JSON库,它允许将Java对象转换为JSON字符串,以及将JSON...
JSON(JavaScript Object Notation)因其轻量级、易读写和易于处理的特性,成为了Android与服务器之间数据交换的主要格式。本教程将深入讲解如何在Android中进行网络请求并使用JSON进行数据传输。 首先,了解...
综上所述,"Json解析获取网络图片"涉及到的知识点涵盖了JSON解析、网络请求、图片加载库的使用、权限管理、异步编程以及内存优化等多个方面。通过学习和实践这些知识点,开发者可以构建出高效、用户体验良好的...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web服务和移动应用中的数据传输。在Java和Android开发中,处理JSON数据是常见的任务,这涉及到JSON的序列化与反序列化,以及格式化显示。...
在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于客户端与服务端之间的数据传输。GSON是Google提供的一个Java库,它可以将Java对象转换为等效的JSON字符串,反之亦然,使得...
本教程将深入讲解Android客户端和服务器端如何进行JSON解析。 一、JSON基础 JSON是一种轻量级的文本格式,它基于JavaScript的一个子集。数据格式简单,易于人阅读和编写,同时也易于机器解析和生成。基本数据类型...
在Web服务和移动应用开发中,JSON已经成为数据传输的标准格式。 "json格式化工具"是用来帮助开发者处理和查看JSON数据的软件。这类工具的主要功能包括: 1. **美化输出**:将紧凑的JSON字符串转换成具有缩进和换行...
在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于服务器与客户端之间的数据传输。这个“android json数据下载与解析demo”是一个实例项目,旨在教授如何在Android应用中从...
在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于服务器与客户端之间的数据传输。ListView是Android系统提供的一个强大的控件,可以用来展示大量的列表数据。将JSON解析并...
在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于应用程序与服务器之间的数据传输。理解并能熟练运用JSON解析对于一个Android开发者来说至关重要。本篇文章将深入探讨...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web服务和应用程序之间的数据传输。它的设计目标是人可读性高且易于编写,同时也易于机器解析和生成。JSON格式基于JavaScript的一个子集...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Android应用程序中的数据传输。在Android开发中,理解并熟练使用JSON解析是至关重要的,因为它允许应用程序与服务器进行高效的数据交互。...
在Android开发中,数据交换是不可或缺的一环,而JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,因其简洁、易读、易解析的特性,被广泛应用于客户端与服务器之间的数据传输。"org.json" 是一个...