java xml的读写操作!

  1. <!--userinfo.xml-->
  2. <?xmlversion="1.0"encoding="UTF-8"standalone="no"?>
  3. <userinfo>
  4. <user>
  5. <name>张三</name>
  6. <sex></sex>
  7. <address>mike</address>
  8. <telephone>07185658043</telephone>
  9. <mobile>13402758940</mobile>
  10. </user>
  11. <user>
  12. <name>李四</name>
  13. <sex></sex>
  14. <address>湖北武</address>
  15. <telephone>123456789</telephone>
  16. <mobile>5658043</mobile>
  17. </user>
  18. <user>
  19. <name>孟德军</name>
  20. <sex></sex>
  21. <address>湖北</address>
  22. <telephone>123456789</telephone>
  23. <mobile>5658043</mobile>
  24. </user>
  25. </userinfo>
  26. <!----------------------------------------------->
  27. userinfo.dtd
  28. <!ELEMENT userinfo (#PCDATA)>
    <!ELEMENT user (name+,sex,address+,telephone+,mobile+)>
    <!ELEMENT user (#PCDATA)>
    <!ELEMENT name (#PCDATA)>
    <!ELEMENT sex (#PCDATA) >
    <!ELEMENT address (#PCDATA)>
    <!ELEMENT telephone (#PCDATA)>
    <!ELEMENT mobile (#PCDATA)>
  29. <!-------------------------------------------------->

  1. /**
  2. *写入xml文件.
  3. */
  4. packagecom.jdm.exer1;
  5. importjava.io.File;
  6. importjava.io.IOException;
  7. importjavax.xml.parsers.DocumentBuilder;
  8. importjavax.xml.parsers.DocumentBuilderFactory;
  9. importjavax.xml.parsers.ParserConfigurationException;
  10. importjavax.xml.transform.Transformer;
  11. importjavax.xml.transform.TransformerConfigurationException;
  12. importjavax.xml.transform.TransformerException;
  13. importjavax.xml.transform.TransformerFactory;
  14. importjavax.xml.transform.dom.DOMSource;
  15. importjavax.xml.transform.stream.StreamResult;
  16. importorg.w3c.dom.Document;
  17. importorg.w3c.dom.Element;
  18. importorg.w3c.dom.Text;
  19. importorg.xml.sax.SAXException;
  20. /**
  21. *@authorAdministrator
  22. *
  23. */
  24. publicclassTest{
  25. /**
  26. *@paramargs
  27. */
  28. privateDocumentBuilderFactoryfactory;
  29. privateDocumentBuilderbuild;
  30. privateDocumentdoc;
  31. publicTest(){
  32. Stringpath=System.getProperty("user.dir")
  33. +"//com//jdm//exer1//userinfo.xml";
  34. factory=DocumentBuilderFactory.newInstance();
  35. try{
  36. build=factory.newDocumentBuilder();
  37. doc=build.parse(newFile(path));
  38. }catch(ParserConfigurationExceptione){
  39. e.printStackTrace();
  40. }catch(SAXExceptione){
  41. e.printStackTrace();
  42. }catch(IOExceptione){
  43. e.printStackTrace();
  44. }
  45. Elementelement=doc.getDocumentElement();
  46. Elementuser=doc.createElement("user");
  47. Elementname=doc.createElement("name");
  48. Elementsex=doc.createElement("sex");
  49. Elementaddress=doc.createElement("address");
  50. Elementtelephone=doc.createElement("telephone");
  51. Elementmobile=doc.createElement("mobile");
  52. Textnametext=doc.createTextNode("孟德军");
  53. Textsextext=doc.createTextNode("男");
  54. Textaddresstext=doc.createTextNode("湖北");
  55. Texttelephonetext=doc.createTextNode("123456789");
  56. Textmobiletext=doc.createTextNode("5658043");
  57. name.appendChild(nametext);
  58. sex.appendChild(sextext);
  59. address.appendChild(addresstext);
  60. telephone.appendChild(telephonetext);
  61. mobile.appendChild(mobiletext);
  62. user.appendChild(name);
  63. user.appendChild(sex);
  64. user.appendChild(address);
  65. user.appendChild(telephone);
  66. user.appendChild(mobile);
  67. element.appendChild(user);
  68. //将文件写入xml文件.
  69. TransformerFactorytransformerfactory=TransformerFactory
  70. .newInstance();
  71. try{
  72. Transformertransformer=transformerfactory.newTransformer();
  73. DOMSourcedomsource=newDOMSource(doc);
  74. StreamResultresult=newStreamResult(newFile(path));
  75. transformer.transform(domsource,result);
  76. }catch(TransformerConfigurationExceptione){
  77. e.printStackTrace();
  78. }catch(TransformerExceptione){
  79. e.printStackTrace();
  80. }
  81. }
  82. publicstaticvoidmain(String[]args){
  83. newTest();
  84. }
  85. }
  86. 完成了写xml文件的操作!下面开始读//

    1. packagecom.jdm.exer1;
    2. importjava.io.File;
    3. importjava.io.IOException;
    4. importjavax.xml.parsers.DocumentBuilder;
    5. importjavax.xml.parsers.DocumentBuilderFactory;
    6. importjavax.xml.parsers.ParserConfigurationException;
    7. importorg.w3c.dom.Document;
    8. importorg.w3c.dom.Element;
    9. importorg.w3c.dom.NodeList;
    10. importorg.xml.sax.SAXException;
    11. publicclassRead{
    12. Stringpath=System.getProperty("user.dir")
    13. +"//com//jdm//exer1//userinfo.xml";
    14. publicRead(){
    15. DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();
    16. try{
    17. DocumentBuilderbuilder=factory.newDocumentBuilder();
    18. Documentdoc=builder.parse(newFile(path));
    19. NodeListnode=doc.getElementsByTagName("user");
    20. for(inti=0;i<node.getLength();i++){
    21. Elementelement=(Element)node.item(i);
    22. System.out.println("姓名:"+element.getElementsByTagName("name").item(0).getFirstChild().getNodeValue());
    23. System.out.println("性别"+element.getElementsByTagName("sex").item(0).getFirstChild().getNodeValue());
    24. System.out.println("地址"+element.getElementsByTagName("address").item(0).getFirstChild().getNodeValue());
    25. System.out.println("电话"+element.getElementsByTagName("telephone").item(0).getFirstChild().getNodeValue());
    26. System.out.println("手机"+element.getElementsByTagName("mobile").item(0).getFirstChild().getNodeValue());
    27. }
    28. }catch(ParserConfigurationExceptione){
    29. e.printStackTrace();
    30. }catch(SAXExceptione){
    31. e.printStackTrace();
    32. }catch(IOExceptione){
    33. e.printStackTrace();
    34. }
    35. }
    36. publicstaticvoidmain(Stringagrs[]){
    37. newRead();
    38. }
    39. }
    40. // 联系我
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值