JSON使用記錄:java 中的應用2---XML與JSON轉換

XMLJSON之間的轉換

Java代碼

1.     package woxingwosu;   

2.       

3.     import java.io.BufferedReader;   

4.     import java.io.BufferedWriter;   

5.     import java.io.FileReader;   

6.     import java.io.FileWriter;   

7.       

8.     import org.json.JSONObject;   

9.     import org.json.XML;   

10.     

11.   public class XMl2JSON {   

12.     

13.     

14.       public static void main(String[] args) {   

15.           BufferedReader buffRed=null;   

16.           BufferedWriter buffWri=null;   

17.           try{   

18.               //XML轉換成JSON   

19.               String fileName1="woxingwosu.xml";   

20.               buffRed=new BufferedReader(new FileReader(fileName1));   

21.               String tempStr;   

22.               StringBuffer xmlStrBuff=new StringBuffer();   

23.               while((tempStr=buffRed.readLine())!=null)   

24.                   xmlStrBuff.append(tempStr);   

25.               System.out.println("JSON str="+XML.toJSONObject(xmlStrBuff.toString()));   

26.                  

27.               //JSON轉換成XML   

28.               String jsonStr="{Heros:{FBI:[{name:\"rose\",age:\"25\"},{name:\"jack\",age:\"25\"}],NBA:[{name:\"tom\",sex:\"man\"},{name:\"jack\",sex:\"women\"}]}};";   

29.               String fileName2="myxml.xml";   

30.               buffWri=new BufferedWriter(new FileWriter(fileName2));   

31.               JSONObject jsonObj=new JSONObject(jsonStr);   

32.               buffWri.write("<?xml version=\"1.0\" encoding=\"GBK\"?>");   

33.               buffWri.newLine();   

34.               buffWri.write("<!DOCTYPE properties SYSTEM \"http://java.sun.com/dtd/properties.dtd\">");   

35.               buffWri.newLine();   

36.               buffWri.write(XML.toString(jsonObj));   

37.               buffWri.flush();   

38.                  

39.               System.out.println("run end!");   

40.           }catch(Exception e){   

41.               e.printStackTrace();   

42.           }finally{   

43.               try{   

44.                   if(buffRed!=null)   

45.                       buffRed.close();   

46.                   if(buffWri!=null)   

47.                       buffWri.close();   

48.               }catch(Exception e){   

49.                   e.printStackTrace();   

50.               }   

51.           }   

52.       }   

53.   }  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章