進行JSON和XML的操作說明介紹
JSON和XML都是基于文本的,兩者都使用Unicode編碼。JSON和XML都很容易閱讀。主觀上,JSON更清晰,冗余更少。XML適合標記文檔(配置文件),JSON更適合數據交換。
JSON操作
1)JSON字符串轉換成JAVAScript對象(調用eval()[JSON本來就是JS的一個子集,所以可以使用JS的解釋器])
- package woxingwosu;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.FileReader;
- import java.io.FileWriter;
- import org.json.JSONObject;
- import org.json.XML;
- public class XMl2JSON {
- public static void main(String[] args) {
- BufferedReader buffRed=null;
- BufferedWriter buffWri=null;
- try{
- //將XML轉換成JSON
- String fileName1="woxingwosu.xml";
- buffRed=new BufferedReader(new FileReader(fileName1));
- String tempStr;
- StringBuffer xmlStrBuff=new StringBuffer();
- while((tempStr=buffRed.readLine())!=null)
- xmlStrBuff.append(tempStr);
- System.out.println("JSON str="+XML.toJSONObject(xmlStrBuff.toString()));
- //將JSON轉換成XML
- String jsonStr="{Heros:{FBI:[{name:\"rose\",age:\"25\"},{name:\"jack\",age:\"25\"}],NBA:[{name:\"tom\",sex:\"man\"},{name:\"jack\",sex:\"women\"}]}};";
- String fileName2="myxml.xml";
- buffWri=new BufferedWriter(new FileWriter(fileName2));
- JSONObject jsonObj=new JSONObject(jsonStr);
- buffWri.write("<?xml version=\"1.0\" encoding=\"GBK\"?>");
- buffWri.newLine();
- buffWri.write("<!DOCTYPE properties SYSTEM \"http://java.sun.com/dtd/properties.dtd\">");
- buffWri.newLine();
- buffWri.write(XML.toString(jsonObj));
- buffWri.flush();
- System.out.println("run end!");
- }catch(Exception e){
- e.printStackTrace();
- }finally{
- try{
- if(buffRed!=null)
- buffRed.close();
- if(buffWri!=null)
- buffWri.close();
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- }
- }
JSON和XML是一種有用的、輕量級協議,現在可用于 PHP V5.2,它可以輕松地實現從 PHP 應用程序中提取出數據,并將其放入 Ajax 應用程序的過程。相應地,PHP 中的 JSON 同樣也是輕量級且十分有用的,只包含兩個易于使用的函數。使用這些函數,我們可以轉換和導出對象結構,還可以使用 json_encode() 使來自 PHP 數據庫連接的數據可用于 Ajax 應用程序。
在 Ajax 應用程序中處理完數據后,可以將數據返回 PHP 腳本并用 json_decode() 重新創建可用的對象數據結構。當把數據返回到 PHP 后,我們可以將其存儲到數據庫中,或使用JSON和XML提供的眾多選擇中的任何其他數據處理方法。