0%

Java IO之XML与JSON解析

<< Java高级软件工程师知识结构

  1. 掌握InputStream、OutputStream、Reader、Writer的继承体系。
  2. 掌握字节流(FileInputStream、DataInputStream、BufferedInputStream、FileOutputSteam、DataOutputStream、BufferedOutputStream)和 字符流(BufferedReader、InputStreamReader、FileReader、BufferedWriter、OutputStreamWriter、PrintWriter、FileWriter),并熟练运用。
  3. 掌握NIO实现原理及使用方法。

Java IO包括:

JSON

JSON: JavaScript对象表示法(JavaScript Object Notation)
是存储和交换文本信息的语法, 类似于XML,它采用键值对的形式来组织,易于阅读和编写,同时也已于机器解析和生成。JSON是独立于语言的,也就是说不管什么语言,都可以解析json,只需要按照json的规则来执行。

JSON与XML比较

  1. json长度更小
  2. json读写速度更快
  3. 可以通过JavaScript内建的方法直接解析,转换成JavaScript对象,非常方便 。

JSON格式

JavaScript中的解析

要两种方式:evalJSON.parse

在代码中使用eval时和危险的! 特别是用它第三方的JSON数据(可能包含恶意代码)时, 尽可能使用 JSON.parse()方法解析字符串本身, 该方法还可以捕捉JSON中的语法错误。

例子:

1
2
3
var jsondata = '{"staff":[{"name":"洪七","age":70},{"name":"郭靖","age":35},{"name":"黄蓉","age":30}]}'
var jsonobj= eval('('+jsondata+')');
alert(jsonobj.staff[0].name);
1
2
3
var jsondata = '{"staff":[{"name":"洪七","age":70},{"name":"郭靖","age":35},{"name":"黄蓉","age":30}]}'
var jsonobj=JSON.parse(jsondata);
alert(jsonobj.staff[0].name);

[参考文献]: