import orgjsonJSONArray;
import orgjsonJSONObject;
public class TestJsonArray {
public static void main(String[] args) throws ParseException {
String jsonStr = "[{\"a\":123, \"b\":\"hello\", \"x\":[{\"inner\":\"Inner JSONObject\"}]}]";
JSONArray jsonArray = new JSONArray(jsonStr);
JSONObject jsonObj = jsonArraygetJSONObject(0);
Systemoutprintln(jsonObj);
int a = jsonObjgetInt("a");
String b = jsonObjgetString("b");
JSONArray jsonArrayX = jsonObjgetJSONArray("x");
Systemoutprintln(a);
Systemoutprintln(b);
Systemoutprintln(jsonArrayX);
Systemoutprintln(jsonArrayXgetJSONObject(0)getString("inner"));
}
}
<%@ page language="java" import="javautil" pageEncoding="gbk"%>
<%@page import="orgjsonsimpleJSONObject"%>
<%@page import="orgjsonsimpleparserJSONParser"%>
<%@page import="orgjsonsimpleJSONValue"%>
<%@page import="orgjsonsimpleJSONArray"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 401 Transitional//EN">
<html>
<head>
<title>获取json内部数据html</title>
<meta >
<meta >
<meta >
<!--<link rel="stylesheet" type="text/css" href="/stylescss">-->
</head>
<body>
<table id="deptPersonList" title="部门信息列表" class="easyui-datagrid"
singleSelect="true" fit="true" pagination="true"
idField="deptPersonId" url="deptPersonInfo" width="800px"
rownumbers="false" striped="true">
<thead>
<tr>
<th field="deptPersonId" width="6" checkbox="true">
编号
</th>
<th field="sysPerson" width="60%" sortable="true">
人员名称
</th>
<th field="sysDepartment" width="30%" sortable="true">
部门名称
</th>
</tr>
</table>
</body>
<script type="text/javascript">
/
json格式如下
{"total":11,"rows":[{"deptPersonId":"1","sysDepartment":{"deptName":"人事"},"sysPerson":{"personName"}}]}
/
var json = {"total":11,
"rows":[{"deptPersonId":"1",
"sysDepartment":{"deptName":"人事"},
"sysPerson":{"personName":"张丽安"}
}
]
};
/
获取josn对象数据,是一层一层进行的。
/
/
js获取json元素中的子元素如deptName,personName
/
alert(jsonrows[0]sysDepartmentdeptName);
alert(jsonrows[0]sysPersonpersonName);
</script>
<%
//jsp获取json元素中的子元素如deptName,personName
//================
//使用 json_simplejar包 处理json字符
//然后获取json对象中的数据
//================
//声明JSON字符串
String json = "{\"tota\":11,"+
"\"rows\":["+
"{\"deptPersonId\":\"1\","+
"\"sysDepartment\":{"+
"\"deptName\":\"人事\"},"+
"\"sysPerson\":{\"personName\":\"张丽安\"}"+
"}"+
"]"+
"}";
//===============================
// 最终的JSON字符如下:
// {"total":11,
// "rows":[{"deptPersonId":"1",
// "sysDepartment":{"deptName":"人事"},
// "sysPerson":{"personName":"张丽安"}
// }
// ]
// }
//
// 注意查结构
//================================
//{"tota":11,"rows":[{"sysPerson":{"personName":"张丽安"},"sysDepartment":{"deptName":"人事"},"deptPersonId":"1"}]}
//将字符串转化为JSON对象
Object JSON = JSONValueparse(json);
//JSONObject继承自 HashMap
JSONObject JO = (JSONObject) JSON;
outprint(JSONtoString());
outprint("<br>");
//查看JSONObject对象元素长度
int length = JOsize();
outprint(length);
outprint("<br>");
outprint(JOtoString());
outprint("<br>");
//循环打印出元素数据
//for(int i = 0 ;i < length ; i++ ){
outprint("tota:<font color=red>" + JOget("tota") + "</font>");
outprint("<br>");
outprint("tota:<font color=red>" + JOget("rows") + "</font>");
outprint("<br>");
String rows = JOget("rows")toString();
//再次将rows对象转化为 JSONObject对象
JSONArray JO1 = (JSONArray) JSONValueparse(rows);
outprint(JO1size());
outprint("<br>");
JSONObject JO2 = (JSONObject)JO1get(0);
outprint("sysPerson:<font color=red>" + JO2get("sysPerson") + "</font>");
outprint("<br>");
outprint("sysDepartment:<font color=red>" + JO2get("sysDepartment") + "</font>");
outprint("<br>");
//再次获取
outprint("personName:<font color=red>" + ((JSONObject)JO2get("sysPerson"))get("personName") + "</font>");
outprint("<br>");
outprint("deptName:<font color=red>" + ((JSONObject)JO2get("sysDepartment"))get("deptName") + "</font>");
outprint("<br>");
//===================================
// 备注 信息
// JSONObject 可以转化为 {key:value}形式的 JSON对象,该对象继承自 HashMap ,所以可以使用HashMap的方法
// JSONArray 可以装维为 [object,object,……] 形式的数据对象,该对象继承自ArrayList,
// 灵活运用,可基本满足 需求。
//}
%>
</html>
你需要 下载 json_simple-11-allzip文件,网上搜索。
处理后如下:
如果是js中遍历使用var anObject = {one:1,two:2,three:3};//对json数组each
$each(anObject,function(name,value) {
});
如果是Java代码直接用for循环就行了,说白了json也是数组的一种,json对象和json数组都可以
//遍历json数组
String json1 = "{data:[{name:'Wallace'},{name:'Grommit'}]}";
jsonObjSplit = new JSONObject(json1);
JSONArray ja = jsonObjSplitgetJSONArray("data");
for (int i = 0; i < jalength(); i++) {JSONObject jo = (JSONObject) jaget(i);Systemoutprintln(joget("name"));}
//JSONObject遍历json对象
String json2 = "{name:'Wallace',age:15}";
jsonObj = new JSONObject(json2);
for (Iterator iter = jsonObjkeys(); iterhasNext();) {String key = (String)iternext();Systemoutprintln(jsonObj getString(Key));}var json={"a":"aaa","b":{"c":"ccc","d":[{"e":"01","g":"kkkk"},{"e":"07","g":"lllll"},{"e":"05","g":"xxxxx"},{"e":"03","g":"kkkk"}]}};
var arr=[];
for(var i=0;i<jsonbdlength;i++){
arr[i]=jsonbd[i]e+"-"+jsonbd[i]g;
}
consolelog(arr);
1、创建python文件,testjsonpy;
2、编写python代码,解析json数组,
json_str = {"name":"lisi",
"age":27}
for key, value in json_stritems():
print(str(key) + '=' + str(value))
3、右击,选择‘在终端中运行Python文件’;
4、查看运行结果,即可发现解析完成;
有两种方法,第一种的话,用迭代器ArrayList arrli=new ArrayList();
for(Iterator is=arrliiterator();isnext())
{
Systemoutprintln(isnext());
}
第二种方法是采用struts标签中的<logic:iterator>进行遍历,这个相对简单些。
其中name属性代表后台传来的list结果集属性名。
<logic:iterate id="rn" name="rl">
<tr>
<th><input type="checkbox" id="e" name="e" value="${rnid}"></th>
<th><%= index %></th>
<th>${rnCId}</th>
<th><span style="cursor:hand" onclick="opensreach('linkmandoos=links&haha=${rnid}')">${rnCName}</span></th>
<th>
<html:button property="s1" value="删除" onclick="return chooseaction('shanchu',${rnid})"/>
<html:button property="s2" value="修改" onclick="choo('myinit',${rnid})"/>
</th>
</tr>
</logic:iterate>
如有其他疑问可以说下,呵呵。
你有两层循环,一个for,一个$each,肯定会多次
for(var i=0;i<datalength;i++){$("#mytab tbody")append("<tr>");
$each(data,function(j,k){
alert(kid);
$("#mytab tbody")append("<td>"+j+"</td>");
$("#mytab tbody")append("<td>"+kid+"</td>");
$("#mytab tbody")append("<td>"+kbiaoti+"</td>");
$("#mytab tbody")append("<td>"+kthetime+"</td>");
});
$("#mytab tbody")append("</tr>");
}
改为:
$each(data,function(j,k){alert(kid);
$("#mytab tbody")append("<tr>");
$("#mytab tbody")append("<td>"+j+"</td>");
$("#mytab tbody")append("<td>"+kid+"</td>");
$("#mytab tbody")append("<td>"+kbiaoti+"</td>");
$("#mytab tbody")append("<td>"+kthetime+"</td>");
$("#mytab tbody")append("</tr>");
});
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)