CDATA 语法可以告诉 xml 解析器,我 CDATA 里的文本内容,只是纯文本,不需要 xml 语法解析 CDATA 格式:
<![CDATA[ 这里可以把你输入的字符原样显示,不会解析 xml ]]>
<book id="x002">
<name><![CDATA[<<葵花宝典>>]]></name>
<price>56</price>
</book>
xml 可扩展的标记语言。 不管是 html 文件还是 xml 文件它们都是标记型文档,都可以使用 w3c 组织制定的 dom 技术来解析。
由于 dom4j 它不是 sun 公司的技术,而属于第三方公司的技术,我们需要使用 dom4j 就需要到 dom4j 官网下载 dom4j
的 jar 包。
// 1 创建SAXReader 对象,读取xml文件,获取Document对象
SAXReader saxReader = new SAXReader();
Document document = saxReader.read("src/xml/books.xml");
// 2 通过Document对象获取xml根元素
Element rootElement = document.getRootElement();
// 3 通过根元素对象获取所有的标签对象
List<Element> books = rootElement.elements("book");
// 4 遍历
for (Element book : books) {
String name = book.element("name").getText();
String price = book.element("price").getText();
System.out.println("书名 : " + name + " 价格 :" + price);
}
<?xml version="1.0" encoding="utf-8" ?>
<!-- xml声明 version是版本的意思 encoding是编码 -->
<books> <!-- 这是xml注释 -->
<book id="SN123123413241"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>java编程思想</name> <!-- name标签描述 的是图书 的信息 -->
<author>华仔</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>9.9</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
<book id="SN12341235123"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>葵花宝典</name> <!-- name标签描述 的是图书 的信息 -->
<author>班长</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>5.5</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
</books>