XML帮助类

1.带有一个路径的参数构造方法

        string path=string.Empty;//路径
        XmlDocument doc = null;
        
        public XmlHelper(string path, XmlDocument doc)
        {
            this.path = path;
            this.doc = doc;
        }

2. 创建XML的根节点方法

    public class XMLHelp
    {
        public void Err(string path)
        {
            XmlDocument doc = new XmlDocument();
	    //头部
            XmlDeclaration declaration = doc.CreateXmlDeclaration("1.0", "utf-8", null);
            doc.AppendChild(declaration);
	    
	    //创建根节点
            XmlElement xmlElement = doc.CreateElement("bookstore");
            doc.AppendChild(xmlElement);
	    doc.Save(path);
        }
    }

3.新增节点方法

            public void Create(string xmlPath)
           {
               XmlDocument xmlDoc = new XmlDocument();
               xmlDoc.Load(xmlPath);
              
               var root = xmlDoc.DocumentElement;//取到根结点
               XmlNode newNode = xmlDoc.CreateNode("element", "NewBook", "");
               newNode.InnerText = "WPF";
  
               //添加为根元素的第一层子结点
               root.AppendChild(newNode);
               xmlDoc.Save(xmlPath);
            }

4.删除节点方法 

           public void Delete(string xmlPath)
           {
               XmlDocument xmlDoc = new XmlDocument();
               xmlDoc.Load(xmlPath);
               var root = xmlDoc.DocumentElement;//取到根结点
   
               var element = xmlDoc.SelectSingleNode("BookStore/NewBook");
               root.RemoveChild(element);
               xmlDoc.Save(xmlPath);
            } 

5.保存XML文件方法

           public void Create(string xmlPath)
           {
               XmlDocument xmlDoc = new XmlDocument();
               xmlDoc.Load(xmlPath);
              
               //保存XML文件方法
               xmlDoc.Save(xmlPath);
            }

6.创建根节点对象方法  

    public class XMLHelp
    {
        public void Err(string path)
        {
            XmlDocument doc = new XmlDocument();
	    //头部
            XmlDeclaration declaration = doc.CreateXmlDeclaration("1.0", "utf-8", null);
            doc.AppendChild(declaration);
	    
	    //创建根节点
            XmlElement xmlElement = doc.CreateElement("bookstore");
            doc.AppendChild(xmlElement);
	    doc.Save(path);
        }
    }

7.获取指定XPath表达式节点的值方法

<Properties>
<Property Descriptor="100">1377349460.298</Property>
<Property Descriptor="101">1</Property>
<Property Descriptor="24000">fail</Property>
</Properties>

我要获取 Property节点值为fail的节点信息

XmlNode xmlnoderesult = doc.SelectSingleNode("//Property[text()='fail']");

8.获取指定XPath表达式节点的属性值方法 

  <root>
      <elem att='the value' />
      </root>

    
    XmlDocument xdoc = new XmlDocument();
    xdoc.LoadXml(text);
    Console.WriteLine(xdoc.SelectSingleNode("/root/elem/@att").Value);

 

9.指定XPath表达式的节点对象方法

    public void test03() throws  Exception 
    {
        //1 得到JXDocument
        Document document = Jsoup.parse(new File(Demo1.class.getResource("/index.html").getPath()), "utf-8");       
        JXDocument jxDocument = new JXDocument(document);
        // 求1:直接全文搜索所有的li元素列表并打印
        List<JXNode> list = jxDocument.selN("//li");
        // 求2:直接全文搜索所有的div,再逐层级搜索下面的a元素下的img元素列表并打印
        list = jxDocument.selN("//div/a/img");

        // 求3:取link元素里面href属性的值,注意属性要用@符号
        list = jxDocument.selN("//link/@href");

        for (JXNode jxNode : list) {
            System.out.println(jxNode);
        }

    }

第6题和第2题有点小瑕疵。

关于XPath可能我写的不太对,个人理解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于 Android XML 解析工具,可以使用 Android 提供的 XmlPullParser 来解析 XML 文件。XmlPullParser 是 Android 系统中提供的一个轻量级的解析器,用于解析 XML 文件。 下面是一个简单的示例代码,展示如何使用 XmlPullParser 来解析 XML 文件: ```java public static List<Entry> parse(InputStream is) throws XmlPullParserException, IOException { List<Entry> entries = new ArrayList<>(); XmlPullParser parser = Xml.newPullParser(); parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, false); parser.setInput(is, null); int eventType = parser.getEventType(); Entry currentEntry = null; while (eventType != XmlPullParser.END_DOCUMENT) { String name = parser.getName(); switch (eventType) { case XmlPullParser.START_TAG: if (name.equals("entry")) { currentEntry = new Entry(); } else if (currentEntry != null) { if (name.equals("title")) { currentEntry.setTitle(parser.nextText()); } else if (name.equals("link")) { currentEntry.setLink(parser.nextText()); } else if (name.equals("description")) { currentEntry.setDescription(parser.nextText()); } else if (name.equals("pubDate")) { currentEntry.setPubDate(parser.nextText()); } } break; case XmlPullParser.END_TAG: if (name.equals("entry") && currentEntry != null) { entries.add(currentEntry); } break; } eventType = parser.next(); } return entries; } ``` 在这个示例中,我们使用 XmlPullParser 解析 XML 文件,并将每个 entry 元素解析为一个 Entry 对象。在解析过程中,我们使用了 XmlPullParser 的一些方法,例如 parser.getEventType()、parser.getName()、parser.nextText() 等。 希望这个示例代码能够帮助你了解如何使用 XmlPullParser 来解析 XML 文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值