java 解析json数据例子:
json数据demo1 :
{"errCode":"0","data":{"validDrawNumToday":0}}
json数据demo2:
{"errCode":"0","data":{"validDrawNumToday":0,"drawQrcodeUrl":"http://h5.itv.cp21.ott.cibntv.net/lottery/draw/acceptqrcode.html?devId=test_x","prize":{"id":2,"name":"多啦a梦星座","picTv":"http://i1.img.cp21.ott.cibntv.net/lc04_iscms/201607/28/10/39/f8aebd254c4c4a51903f56ea5a6dd4ec.png","picMobile":"http://i3.img.cp21.ott.cibntv.net/lc06_iscms/201607/29/11/22/c100737ff9af47ba86bebbc07e8216d3.png"}}}java 的访问url解析json内容,保存指定的字段“prize”字段的值
package tvguess;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.Iterator;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.ParseException;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class changedevid {
public static String getWebContent(String Url) {
HttpGet httpGet = new HttpGet(Url);
CloseableHttpClient httpClient = HttpClients.createDefault();
CloseableHttpResponse httpResponse = null;
try {
httpResponse = httpClient.execute(httpGet);
} catch (IOException e) {
e.printStackTrace();
}
HttpEntity entity = httpResponse.getEntity();
if (entity != null)
try {
return EntityUtils.toString(entity, "UTF-8");
} catch (ParseException | IOException e) {
e.printStackTrace();
}
return null;
}
/**
* json中可以不带字prize字段
* @param strResult
* @return
*/
public static String parseJsonMulti(String strResult) {
System.out.println("parse start....");
String prize = "";
try {
JSONObject jobject = new JSONObject(strResult);
JSONObject jdata = jobject.getJSONObject("data");
System.out.println(jdata);
//循环查找出json属性值
Iterator<?> objkey=jdata.keys();
while (objkey.hasNext()){
String aa2 = (String) objkey.next().toString();
String bb2 = jdata.getString(aa2);
System.out.println(aa2+":"+bb2);
if(aa2.equals("prize")){
System.out.println("------------");
String prizeresult = bb2;
System.out.println("prizerresult:"+ prizeresult);
fileprize("prize.txt", prizeresult);
}else{
System.out.println("no prize");
}
}
} catch (JSONException e) {
e.printStackTrace();
}
return prize;
}
/**
* json中必须带prize的字段
* @param strResult
* @return
*/
public static String parseJsonMulti01(String strResult) {
System.out.println("parse start....");
String prize = "";
try {
// 直接查找元素子元素
JSONObject jobject = new JSONObject(strResult);
JSONObject jdata = jobject.getJSONObject("data");
JSONObject jprize = jdata.getJSONObject("prize");
prize = jprize.getString("id") + "," + jprize.getString("name") + "/n";
System.out.println(prize);
} catch (JSONException e) {
e.printStackTrace();
}
return prize;
}
public static void fileprize(String fileName, String content) {
RandomAccessFile randomFile = null;
try {
randomFile = new RandomAccessFile(fileName, "rw");
long fileLength = randomFile.length();
randomFile.seek(fileLength);
randomFile.writeBytes(content);
} catch (IOException e) {
e.printStackTrace();
} finally {
if (randomFile != null) {
try {
randomFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) throws IOException {
int x = (int) (Math.random() * 100000);
//String strUrl = "http://h5.itv.cp21.ott.cibntv.net/api/lottery/draw.json?devId=test_" + x;
String strUrl = "http://10.58.100.90/jsondatedemo.txt";
System.out.println(strUrl);
String strResult = getWebContent(strUrl);
System.out.println(strResult);
String prize = parseJsonMulti(strResult);
//String prize = parseJsonMulti01(strResult);
//fileprize("prize.txt", prize);
}
}
--------------------------------------------------------------------------------------
json查找数组的代码
public String parseJsonMulti(String strResult) {
// public void parseJsonMulti(String strResult,TextView etContent) {
System.out.println("parse start....");
String channelid = "";
//List livelist = new ArrayList();
try {
//JSONArray jsonArray = new JSONArray(String.valueOf(msg.obj));
JSONObject jsonObject = new JSONObject(strResult.toString());
JSONArray arrayJson = jsonObject .getJSONArray("data");
// etContent.setText("parse start...");
String str = "urlconnect:";
for (int i=0;i<arrayJson.length();i++)
{
JSONObject tempJson = arrayJson.optJSONObject(i);
//JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i);
str=str+"第"+i+"个,频道id:"+tempJson.getString("channelId")+"\n";
// etContent.setText(str);
// str2 = str2+"type:"+tempJson.getString("type")+"频道id:"+tempJson.getString("channelId")+"\n";
// str2 = str2+tempJson.getString("type")+tempJson.getString("channelId");
channelid=channelid+tempJson.getString("channelId")+",";
// livelist.add(i);
// etContent.setText(str2);
System.out.println(channelid);
// Log.v("zms", str);
}
System.out.print(str);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
// etContent.setText("error");
}
return channelid;
}
相关推荐
Java JSON处理库之Gson的用法详解.rar
java处理JSON数据
这个代码实现了一个简单的在线购物车管理系统...toJson方法将购物车对象转换为JSON格式的字符串返回。最后在main方法中创建了一个ShoppingCart对象,并演示了如何添加、删除商品以及获取总价和转换成JSON字符串的操作。
eclipse中使用json相关的jar包,比较全,有gson相关的。
java中json处理的使用.doc
JSON处理类(JAVA).docJSON处理类(JAVA).doc
org.json java处理json数据 包含source class文件和 javadoc
JSON转换为JAVA对象及日期格式转换处理 -
处理json、的java lib 使用见:www.json.org
java json-lib处理json对象的常用代码,下载导入可用,可验证。
java开发json数据处理全部支持包JSON-LIB,json-lib 2.4,解决java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException异常
Json字符串处理方法集成大类,帮助开发者快速开发程序。
处理嵌套json格式的数据。。。 public static void main(String[] args) { // 官方API http://www.json.org/java/ /* 购物车中信息 goods_cart={cart_1325036696007:{goods_id:"100015",goods_name:"澳大利亚...
json是一个轻量级数据交换格式,很容易被人们读写,很容易被机器解析和生成。它建立在js的一个子集之上,json是一个文本格式,它独立于具体的语言,但是使用了和c类似的...包括c、c++、c#、java、js、perl、perl、等。
java 开发之json字符串、json对象 处理所需json jar包及其依赖jar包,个人收集且已验证;
json-20230227.jar下载,org.json是一款 veteran 的 Java JSON 处理库。它提供了一组简单的 Java APIs 来处理 JSON,简化了 Java 与 JSON 的交互过程。org.json体积小、性能出色且无依赖,在 Android 和 Java 项目中被...
基于java的开发源码-高性能的JSON处理 Jackson.zip 基于java的开发源码-高性能的JSON处理 Jackson.zip 基于java的开发源码-高性能的JSON处理 Jackson.zip 基于java的开发源码-高性能的JSON处理 Jackson.zip 基于java...
献给那些学习java的同学,找半天找不到,有些积分很多,现在免费共享给大家,希望大家多交流。
java使用json需要导入一些jar包,在这些jar包中封装了一些很方便的方法来处理json字符串
Net.sf.Json Java解析Json所含的包 Java解析Json所含的包 Java解析Json所含的包