java对json文件的操作
第一步:通过FileReader读取json文件
第二步:使用BufferReader,先通过I/O读取一定大小的数据缓存到数组中,然后再从数组取出数据。
第三步:用一个字符串把每次传来的数据处理后写到新的文件中。重复这个过程。
注意事项:
在json中,每一行就是一个json对象,需要用{}括起来,json对象键值对里面还可以保存jsonArray和jsonObject,json jar包里面包含键值对增加和删除的操作。
import org.json.JSONException;
import org.json.JSONObject; import java.io.*; /**
* @author Mr.Xu
* @version 1.0
* @date 2018/5/7.
*/
public class jsontest { /**
* @param args
*/
public static void main(String[] args) {
// 读取原始json文件并进行操作和输出
try {
BufferedReader br = new BufferedReader(new FileReader(
"C:\\Users\\Administrator\\Desktop\\ParseData\\test.json"));// 读取原始json文件
BufferedWriter bw = new BufferedWriter(new FileWriter(
"C:\\Users\\Administrator\\Desktop\\ParseData\\testresult.json"));// 输出新的json文件
String s = null, ws = null;
while ((s = br.readLine()) != null) {
System.out.println(s);
try {
JSONObject dataJson = new JSONObject(s);// 创建一个包含原始json串的json对象
ws = dataJson.toString();
System.out.println(dataJson.getJSONArray("people").getJSONObject(0).get("name"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} bw.write(ws);
bw.flush();
br.close();
bw.close(); } catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } }
json测试
test.json
{"t1":"1","people":[{"name":"LSY","age":"23"},{"name":"XRC","age":"23"}]}
小徐看世界,世界如此多娇: http://www.cnblogs.com/schoolbag/
java对json文件的操作的更多相关文章
- 更新java对xml文件的操作
//更新java在xml文件中操作的内容 public static void upda(Document doc) throws Exception{ //创建一个TransformerFactor ...
- Java 字节流实现文件读写操作(InputStream-OutputStream)
Java 字节流实现文件读写操作(InputStream-OutputStream) 备注:字节流比字符流底层,但是效率底下. 字符流地址:http://pengyan5945.iteye.com/b ...
- Java解析JSON文件的方法
http://blog.sina.com.cn/s/blog_628cc2b70101dydc.html java读取文件的方法 http://www.cnblogs.com/lovebread/ar ...
- Java读取json文件并对json数据进行读取、添加、删除与修改操作
转载:http://blog.csdn.net/qing_yun/article/details/46865863#t0 1.介绍 开发过程中经常会遇到json数据的处理,而单独对json数据进行 ...
- java解析json文件(省,市,区)
[{"code":"11","name":"北京市"},{"code":"12" ...
- Java解析JSON文件的方法(一)
一.首先需要在Eclipse工程中导入相关的jar包,jar包参见链接:http://yunpan.alibaba-inc.com/share/link/NdA5b6IFK 二.提供一份待解析的jso ...
- Java 读取Json文件内容
读取json文件为String类型: import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logge ...
- java对xml文件的操作
xml文件格式(示例): <?xml version="1.0" encoding="UTF-8"?> <root> <Funct ...
- Java 读取 json文件
public ResponseBean getAreas() { String path = getClass().getClassLoader().getResource("area.js ...
随机推荐
- Extjs header column 自定义排序规则
Extjs 的表格自带排序功能,这个功能在大部分情况下能够满足我们的需求,但是在某种情况下,例如IP排序,默认情况下,按照字符串进行排序, 此时我们需要自定义排序规则,这个时候就需要我们重写方法了, ...
- direct path write 等待事件导致数据库hang
同事反应十几分钟前数据库好像挂起了一会,让我排查数据库是否存在什么问题. 第一反应看当前数据库还是否有什么等待事件,结果有direct path write等待事件. 于是抓了问题时间段20分钟的AS ...
- duplicate symbols for architecture arm64 导入的类库字符重复
这个错误大部分时候是引用库重复定义的问题. 项目需要,同时引用ZBar和QQ授权登录SDK,由于二者均使用了Base64处理数据,XCode编译时报错: duplicate symbol _base6 ...
- python 创建虚拟环境
创建一个文件夹:mkdir tf_env 进入到文件夹内:cd tf_env 创建虚拟环境:python3 -m venv tensorflow-dev 激活虚拟环境:source tensorflo ...
- Java 8 – Map排序
前提 Map是Java中最常用的集合类之一,这里整理了关于HashMap的排序 (关于List的排序,请查看Collections.sort()的doc或源码). 将无序的HashMap借助Strea ...
- Android 微信页面刷新问题
今天测试妹纸提了个bug,Android手机用微信打开测试页面,刷新功能无效.因为开发时懒,只验证了Ios手机无异常,没有注意打安卓这个问题. 我是直接用的window.location.reload ...
- OpenCV-Python 人脸眼睛嘴识别
# 识别眼睛.嘴巴.人脸 image = cv2.imread('./yong.jpg') gray = cv2.cvtColor(image,code=cv2.COLOR_BGR2BGRA) # 加 ...
- python中的super怎么用?
面向对象有这个强大特点和作用, 著名的三大特点:封装, 继承, 多态 这篇博客写的是super()的简单理解和使用 今天在读restframework的源码的时候, 发现源码中使用了super, 依以 ...
- 月薪30-50K的大数据工程师们,他们背后是如何学习的
这两天小编去了解了下大数据开发相关职位的薪资,主要有hadoop工程师,数据挖掘工程师.大数据算法工程师等,从平均薪资来看,目前大数据相关岗位的月薪均在2万以上,随着项目经验的增长工资会越来越高. ...
- DQL数据查询
set hive.fetch.task.conversion=more; -- 避免触发MR job select distinct name from employee_id limit 2; -- ...