zoukankan      html  css  js  c++  java
  • xml操作笔记

    1,将xml字符串解析为xml

      Document doc  = DocumentHelper.parseText(xml); // 将字符串转为XML

    2,遍历xml通过指定一个参数获取其他参数的值

    xml文件:

    <nodes>
    	<node key='key0' value='value0' />
    	<node key='key1' value='value1' />
    	<node key='key2' value='value2' />
    	<node key='key3' value='value3' />
    	<node key='key4' value='value4' />
    </nodes>
    

     方法:

      import org.dom4j.Document;
    		  import org.dom4j.DocumentException;
    		  import org.dom4j.DocumentHelper;
    		  import org.dom4j.Element;
    		  import org.dom4j.io.SAXReader;
    		  //----------------      
    
    		  public String getXmlvalueByKey(String xmlString, String key) {
    		          String value = null;
    		          Element placard = null;
    		          Document document = null;
    		          SAXReader reader = new SAXReader();
    		          try {
    		              // document = reader.read(new File("E:/temp/test.xml")); //解析xml文件
    		              document = DocumentHelper.parseText(xmlString); // 解析xml字符串
    		              placard = document.getRootElement();
    		              Element item = (Element) placard.selectSingleNode("/nodes/node[@key='" + key + "']");
    		              if (item != null) {
    		                  value = item.attributeValue("value");
    		              }
    		          } catch (DocumentException e) {
    		              e.printStackTrace();
    		          }
    		          return value;
    		      }
    

     测试方法:

    @Test
    		public void test1() throws Exception{
    		String xmlString ="<nodes><node key='key0' value='value0' /><node key='key1' value='value1' /><node key='key2' value='value2' /><node key='key3' value='value3' /><node key='key4' value='value4' /></nodes>";
    		
    		//查找xml文件key的值
    		  String value=new ExcelOperationUtil().getXmlvalueByKey(xmlString,"key1");
    		  System.out.println(value);//输出结果value1
    		}
    
  • 相关阅读:
    C#中 Thread,Task,Async/Await,IAsyncResult 的那些事儿!
    Java8的新特性以及与C#的比较
    点旋转坐标变换
    vc++返回模块路径
    为什么不要 "lock(this)" ? lock object 并是readonly(转载)
    《黄帝内经》要义
    C++多线程编程简单实例
    c++ 获取文件大小
    c# 获取文件夹大小
    自动驾驶仿真工具的下载与安装
  • 原文地址:https://www.cnblogs.com/zy2009/p/6731396.html
Copyright © 2011-2022 走看看