
字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似_址椤
所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[0]=“a”,s[9]="j",而字符串的 零位正是它的长度,如s[0]=10(※上述功能Ansistring没有。),这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入 数组。
<%@ 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/json 数组的 *** 作
1、数组的创建
var arrayObj = new
Array(); //创建一个数组
var arrayObj = new
Array([size]); //创建一个数组并指定长度,注意不是上限,是长度
var arrayObj = new Array([element0[,
element1[, [, elementN]]]]); 创建一个数组并赋值
要说明的是,虽然第二种方法创建数组指定了长度,但实际上所有情况下数组都是变长的,也就是说即使指定了长度为5,仍然可以将元素存储在规定长度以外的,注意:这时长度会随之改变。
2、数组的元素的访问
var testGetArrValue=arrayObj[1];
//获取数组的元素值
arrayObj[1]= "这是新值"; //给数组元素赋予新的值
3、数组元素的添加
arrayObj push([item1 [item2 [
[itemN ]]]]);// 将一个或多个新元素添加到数组结尾,并返回数组新长度
arrayObjunshift([item1 [item2 [
[itemN ]]]]);// 将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度
arrayObjsplice(insertPos,0,[item1[,
item2[,
[,itemN]]]]);//将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。
4、数组元素的删除
arrayObjpop(); //移除最后一个元素并返回该元素值
arrayObjshift();
//移除最前一个元素并返回该元素值,数组中元素自动前移
arrayObjsplice(deletePos,deleteCount);
//删除从指定位置deletePos开始的指定数量deleteCount的元素,数组形式返回所移除的元素
5、数组的截取和合并
arrayObjslice(start, [end]);
//以数组的形式返回数组的一部分,注意不包括 end 对应的元素,如果省略 end 将复制 start 之后的所有元素
arrayObjconcat([item1[, item2[,
[,itemN]]]]); //将多个数组(也可以是字符串,或者是数组和字符串的混合)连接为一个数组,返回连接好的新的数组
6、数组的拷贝
arrayObjslice(0);
//返回数组的拷贝数组,注意是一个新的数组,不是指向
arrayObjconcat();
//返回数组的拷贝数组,注意是一个新的数组,不是指向
7、数组元素的排序
arrayObjreverse();
//反转元素(最前的排到最后、最后的排到最前),返回数组地址
arrayObjsort(); //对数组元素排序,返回数组地址
8、数组元素的字符串化
arrayObjjoin(separator);
//返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 隔开。
toLocaleString 、toString
、valueOf:可以看作是join的特殊用法,不常用
var obj = {"pieTes":[{"colors":"Sony","value":7},{"colors":"Samsumg","value":14},{"colors":"LG","value":21},{"colors":"Vizio","value":34},{"colors":"Insignia","value":24}]};
var arr = new Array();
for(var i in xpieTes) {
arrpush([xpieTes[i]colors, xpieTes[i]value]);
}
alert(arr);
// 输出 Sony,7,Samsung,14,LG,21,Vizio,34,Insignia,24
alert 不会以数组形式显示,实际结果应该如图所示 consolelog(arr);
orgjson版本无所谓大同小异
//前4行基本是固定写法不用管他
import orgjsonJSONObject;
import orgjsonJSONArray;
String response_data = prevgetResponseDataAsString();// 获取返回的response
JSONObject data_obj = new JSONObject(response_data);//把获取到的json字符串转成对象
//先把最终需要获取的内容转换成对象,ps:get就是获取这个json下的数据 (json层级分明,根据层级一层层往下找即可)
JSONObject jsonObject_1 = data_objget("data")get("formData");
JSONObject jsonObject_1 = data_objget("data")get("formData");
//修改,新增直接用PUT 就可以
jsonObject_1 put("json字段名称",1);
//使用remove即可
jsonObject_1 remove("age");
//json中获取数组时,需要在get后面加JSONArray 最前面的也要改成JSONArray
//getJSONObject(0)代表获取第一个数组数据
JSONArray jsonObject_2 =data_objget("data")getJSONArray("Array");getJSONObject(0);
JSONArray jsonObject_2 =data_objget("data")getJSONArray("Array");
//做一个for循环把数组里面需要修改的都修改一次
for (int i = 0; i < jsonObject_2length(); i++)// 获取这个数组的长度进行循环
{//在重新声明一个对象 (JSONObject)是强制转换的意思
JSONObject jsonTemp = (JSONObject)jsonObject_2getJSONObject(i);
for(int i=0;i<jsonTemplength(); i++)
{//你要修改什么数据,需要获取他上一层的爸爸,然后进行 *** 作
jsonTempput("field_confirm", "Y");
jsonTempput("field_send_quantity", "89");
}
}
import orgjsonJSONObject;
import orgjsonJSONArray;
String response_data = prevgetResponseDataAsString();
JSONObject data_obj = new JSONObject(response_data);
//最开始设置好你需要获取json的那一部分内容,后面的修改都基于这个变量进行修改
JSONObject JsonData = data_objgetJSONObject("data");
JsonDataput("字段名","修改的内容");//可以加"",也可以不加 根据实际情况
//最后只需要把最开始设置的变量转成字符串即可
String NewData = JsonData toString();
//把字符串化的设置成jmeter的变量,即可用${变量名}调用
varsput("yp_body",NewData);
以上就是关于C++如何获取json数组的第几位是啥全部的内容,包括:C++如何获取json数组的第几位是啥、jsp获取json元素中的子元素如deptName,personName、js如何 *** 作多维json数组等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)