XML与JSON之间的转换
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. }