xml檔案
XML
什麼是xml?
xml是可擴充套件的標記性語言
xml的作用?
xml 的主要作用有:
1、用來儲存資料,而且這些資料具有自我描述性
2、它還可以做為專案或者模組的配置檔案
3、還可以做為網路傳輸資料的格式(現在 JSON 為主)。
xml語法
- 文件宣告。
- 元素(標籤)
- xml 屬性
- xml 註釋
- 文字區域(CDATA 區)
文件宣告:
新建一個xml檔案,在頭部宣告。
<?xml version="1.0" encoding="UTF-8" ?>
<!--vesion是xml的版本,encoding表示xml檔案的編碼-->
<?xml version="1.0" encoding="UTF-8" ?>
<!--vesion是xml的版本,encoding表示xml檔案的編碼-->
<books>
<book sn="圖書編號1">
<name>a</name>
<!-- <是小於號的轉義,>是大於號的轉義-->
<!-- <author><aa></author> -->
<author>
<!-- CDATA告訴xml檔案這裡面是文字就不會解析括號-->
<![CDATA[<aa>]]>
</author>
<price>aaa</price>
</book>
<book sn="圖書編號2">
<name>b</name>
<author>bb</author>
<price>bbb</price>
</book>
</books>
xml介紹和獲取
attribute是屬性,比如上面的sn就是屬性,為元素提供額外的資訊
最底層的元素叫根元素
獲取xml檔案中的內容
- 匯入一個叫dom4j的jar包,dom4j就是專門用來處理xml檔案的包。
- 讀取books.xml(建立一個saxreader輸入流,去讀取xml檔案,生成doucument物件)
- 通過Document物件獲取根元素
- 通過根元素獲取book標籤物件
- 遍歷,處理每個book書籤轉換成book類
裡面的一些方法:
①Document物件獲取根元素:.getRootElement()
②根元素獲取子元素:.element(獲取一個子元素,要給定名字) / .elements(獲取多個子元素,可以給定名字也可以不給)
③子元素的操作:
.element():繼續獲取子元素
.getText():可以獲取標籤中的文字內容
.elementText(指定標籤名):直接獲取指定標籤名的文字內容
.attributeValue(指定屬性名):獲取指定屬性名的內容
.asXML():把標籤物件,轉換為標籤字串
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.junit.Test;
import java.util.List;
/**
* @Author: yyyzl
* @Date: 2020/9/28
**/
public class Dom4j {
@Test
public void test1() throws DocumentException {
//建立一個saxreader輸入流,去讀取xml檔案,生成doucument物件
SAXReader saxReader=new SAXReader();
Document read = saxReader.read("src/book/books.xml");
System.out.println(read);
}
@Test
public void Test2() throws DocumentException {
//1 讀取books.xml
SAXReader reader=new SAXReader();
//在Junit測試中,相對路徑是從模組名開始算
Document document = reader.read("src/book/books.xml");
//2 通過Document物件獲取根元素
Element rootElement = document.getRootElement();
// System.out.println(rootElement.getName());
//3 通過根元素獲取book標籤物件
List<Element> elements = rootElement.elements("book");
//4 遍歷,處理每個book書籤轉換成book類
for(Element e:elements){
//asXML() 把標籤物件,轉換為標籤字串
//element:取到指定名字的element
Element name = e.element("name");
//getText():可以獲取標籤中的文字內容
String text = name.getText();
//直接獲取指定標籤名的文字內容
String price = e.elementText("price");
//獲取標籤上的屬性值
String snvalue=e.attributeValue("sn");
System.out.println(e.asXML()); //把xml整個輸出
System.out.println(name.asXML()); //<name>a</name>
System.out.println(text); //a
System.out.println(price); //aaa
System.out.println(snvalue); //圖書編號1
}
}
}
相關文章
- jdom解析xml檔案XML
- [XML與properties檔案]XML
- GData解析XML檔案XML
- jquery 解析xml檔案jQueryXML
- xml是什麼格式的檔案 xml檔案怎麼開啟XML
- java 語音用xml檔案實現圖形介面 xml檔案JavaXML
- 讀取xml檔案 解析雙層xmlXML
- Go xml檔案處理GoXML
- 使用 Java 解析XML檔案JavaXML
- SQL Map XML配置檔案。SQLXML
- 讀寫iOS XML檔案iOSXML
- C# 建立XML檔案C#XML
- 利用Perl解析XML檔案XML
- JAVA 讀取xml檔案JavaXML
- 用JDOM操作XML檔案XML
- C#解析XML檔案C#XML
- XML口令檔案描述 (轉)XML
- .NET操作XML檔案---[新增]XML
- python XML 檔案解析PythonXML
- Python操作xml檔案(xml.etree.ElementTree)PythonXML
- 給XML檔案定義DTDXML
- Java系列:讀取XML檔案JavaXML
- AndroidMainfest.xml檔案AndroidAIXML
- C#讀取Xml檔案C#XML
- ajax與XML檔案互動XML
- Office檔案的Open Xml 格式XML
- 用JDOM讀取XML檔案XML
- C# 對XML檔案控制C#XML
- web.xml檔案的作用WebXML
- Android之XML檔案解析AndroidXML
- 慎用Ultraedit編輯xml檔案XML
- 求助!!!Java傳輸XML檔案JavaXML
- 檔案上傳用XML (轉)XML
- 使用XML上傳檔案 (轉)XML
- vbs類生成xml檔案(轉)XML
- 使用xml檔案配置SSM整合XMLSSM
- 【SSM框架整合】專案xml檔案、properties等檔案的配置SSM框架XML
- 使用PHP DOM-XML建立和解析XML檔案 (轉)PHPXML