Android中如何修改json里某个字段的值.
2017-09-27 16:28
246 查看
注释:
直接调用就可以. 第一个参数为key,第二个为值,第三个传一个整串json的jsonObject.
/**
* 解析Json数据.
*
* @param key 更换数据key
* @param value 更换Value
* @param object 解析对象
*/
public void analyzeJson(String key, Object value, Object object) {
try {
if (object instanceof JSONArray) {
JSONArray jsonArray = (JSONArray) object;
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
analyzeJson(key, value, jsonObject);
}
} else if (object instanceof JSONObject) {
JSONObject jsonObject = (JSONObject) object;
Iterator iterator = jsonObject.keys();
while (iterator.hasNext()) {
String jsonKey = iterator.next().toString();
Object ob = jsonObject.get(jsonKey);
if (ob != null) {
if (ob instanceof JSONArray) {
analyzeJson(key, value, ob);
} else if (ob instanceof JSONObject) {
analyzeJson(key, value, ob);
} else {
if (jsonKey.equals(key)) {
jsonObject.put(key, value);
}
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
直接调用就可以. 第一个参数为key,第二个为值,第三个传一个整串json的jsonObject.
/**
* 解析Json数据.
*
* @param key 更换数据key
* @param value 更换Value
* @param object 解析对象
*/
public void analyzeJson(String key, Object value, Object object) {
try {
if (object instanceof JSONArray) {
JSONArray jsonArray = (JSONArray) object;
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
analyzeJson(key, value, jsonObject);
}
} else if (object instanceof JSONObject) {
JSONObject jsonObject = (JSONObject) object;
Iterator iterator = jsonObject.keys();
while (iterator.hasNext()) {
String jsonKey = iterator.next().toString();
Object ob = jsonObject.get(jsonKey);
if (ob != null) {
if (ob instanceof JSONArray) {
analyzeJson(key, value, ob);
} else if (ob instanceof JSONObject) {
analyzeJson(key, value, ob);
} else {
if (jsonKey.equals(key)) {
jsonObject.put(key, value);
}
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
相关文章推荐
- 如何用SQL命令修改字段名称
- 如何修改一個主鍵字段
- Android中如何修改系统时间(应用程序获得系统权限)
- SQL如何修改被计算字段引用的字段类型
- 如何使用VC+ADO修改access数据库中的字段名
- MySQL如何修改表格的字符集,如何修改某个字段的字符集
- 如何使用 RowDataBound 事件在数据源中的字段值显示在 GridView 控件中之前修改该值
- [转]如何用SQL命令修改字段名称
- Android中如何修改系统时间(应用程序获得系统权限)
- 如何修改物料主数据中的字段名称
- 如何修改Android中Browser的UserAgent
- Android中如何修改系统时间(应用程序获得系统权限)
- 如何修改android主界面上默认的应用程序快捷方式
- oracle数据库有数据如何修改字段类型
- Json-lib 如何转换日期格式的字段 json-->java
- 如何修改Android系统内置的桌面图标
- Json-lib 如何转换日期格式的字段 json-->java
- ABAP--如何在'REUSE_ALV_GRID_DISPLAY'使用自定义F4帮助,返回多个字段以及计算修改其他字段
- 如何修改或编辑SharePoint的用户或用户组字段
- 新手入门——如何修改OPhone(Android)应用程序的图标和名字?