디렉토리 구조:
DOM: (Document Object Model)은 W3C 조직에서 권장하는 XML 처리 방법입니다. 이 방법을 사용하여 XML 문서를 구문 분석하면 문서의 모든 요소 간의 계층적 관계에 따라 메모리에 트리 구조가 구성됩니다. 따라서 메모리에 많은 부담을 주고 구문 분석 및 읽기 속도가 느리다는 장점이 있습니다. 노드의 내용을 탐색하고 수정할 수 있다는 것입니다.
SAX: (XML용 단순 API)는 XML 구문 분석의 대안입니다. DOM에 비해 구문 분석 속도가 빠르고 메모리 부담이 적다는 단점이 있습니다. 노드의 내용을 수정할 수 없다는 것입니다.
2.2 dom4j를 사용하여 XML 구문 분석
dom4j를 사용하여 XML을 구문 분석하기 전에 작성자의
dom4j-1.6.1.jar패키지
2.2.1 dom4j의 API
//创建SAXReader,是dom4j包提供的解析器SAXReader reader=new SAXReader();//读取指定的文件Document doc=reader.read(new File(filename)); Document Document getRootElement() 用于获取根元素 Element Element element(String name) 获取元素下指定名称的子元素 List<element> elements() 获取元素下所有的子元素 String getName() 获取元素名 String getText() 获取元素文本内容 String elementText(String name) 获取子元素文本内容 Attribute attribute(String) 获取元素的属性 String attributeValue(String name) 获取元素的属性值 Attribute String getName() 获取属性的名字 String getValue() 获取属性的值</element>와 같은 관련 도구 패키지를 가져와야 합니다.
2.2 .2 프로젝트
<?xml version="1.0" encoding="utf-8" ?><books> <book><name>三国演绎</name><author>罗贯中</author><price>58.8</price> </book> <book><name>水浒传</name><author>施耐庵</author><price>49.8</price> </book> <book><name>西游记</name><author>吴承恩</author><price>100.1</price><order>1</order> </book></books>pricties 바로 아래에 있는 XML 파일 pricties.xml 파일의 전체 내용을 인쇄합니다. .3 dom4j XPath의 애플리케이션은 XML을 구문 분석합니다먼저 소개해야 할 사항은 다음과 같습니다. 독자의 dom4j 기반 해당 jar 패키지:
jaxen-1.1-beta-6.jar


import java.io.File;import java.util.List;import org.dom4j.Attribute;import org.dom4j.Document;import org.dom4j.Element;import org.dom4j.io.SAXReader;public class ParseXML {public static void main(String[] args) {//创建SAXReader对象SAXReader saxr=new SAXReader(); Document docu=null;try{//读取指定的文件,相对于项目路径docu=saxr.read(new File("pricties.xml"));//获得元素的文件的根节点Element e=docu.getRootElement(); searchAllElement(e); }catch(Exception e){ e.printStackTrace(); } } public static void searchAllElement(Element e){//获得当前元素下的所有子元素,并存储到集合中List<element> elements=e.elements(); System.out.print(" atrs=e.attributes();//打印该标记下的所有属性for(Attribute att:atrs){ System.out.print(" "+att.getName()+"=\""+att.getValue()+"\""); } System.out.println(">"); //如果集合的大小为0,表示该集合下没有子元素了if(elements.size()==0){ System.out.println(e.getText());//打印文本信息System.out.println(""+e.getName()+">");//打印结束标记return;//退出当前层方法 } //递归每一个子元素for(Element ele:elements){ searchAllElement(ele); } System.out.println(""+e.getName()+">");//打印结束标记 } }</element>
2.3.2 XPath的路径表达式
2.3.2.1 XPath的路径表达式规则
2.3.2.2 XPath的路径表达式应用案例
2.3.3 通配符
2.3.3.1 通配符规则
2.3.3.2 通配符应用案例
2.3.4 谓语
2.3.4.1 谓语规则
谓语是用来查找某个特定的节点或是包含某个指定的值的节点
谓语被嵌在方括号中
2.3.4.2 谓语应用案例
3 java写XML文件
3.1 将一个带有书籍信息的List集合解析为XML文件


package com.xdl.xml;public class Book {private String name;private String author;private String price;public Book() {super(); }public Book(String name, String author, String price) {super(); setName(name); setAuthor(author); setPrice(price); }/** * @return the name */public String getName() {return name; }/** * @param name the name to set */public void setName(String name) {this.name = name; }/** * @return the author */public String getAuthor() {return author; }/** * @param author the author to set */public void setAuthor(String author) {this.author = author; }/** * @return the price */public String getPrice() {return price; }/** * @param price the price to set */public void setPrice(String price) {this.price = price; } }


package com.xdl.xml;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;import org.dom4j.io.XMLWriter;public class WriteXML {public static void main(String[] args) {//创建一个Book集合用于存储书籍信息List<book> list_books=new ArrayList<book>();//插入书籍信息for(int i=0;i</book></book>
4 Schema和DTD的区别
Schema是对XML文档结构的定义和描述,其主要的作用是用来约束XML文件,并验证XML文件有效性。DTD的作用是定义XML的合法构建模块,它使用一系列的合法元素来定义文档结构。它们之间的区别有下面几点:
1、Schema本身也是XML文档,DTD定义跟XML没有什么关系,Schema在理解和实际应用有很多的好处。
2、DTD文档的结构是“平铺型”的,如果定义复杂的XML文档,很难把握各元素之间的嵌套关系;Schema文档结构性强,各元素之间的嵌套关系非常直观。
3、DTD只能指定元素含有文本,不能定义元素文本的具体类型,如字符型、整型、日期型、自定义类型等。Schema在这方面比DTD强大。
4、Schema支持元素节点顺序的描述,DTD没有提供无序情况的描述,要定义无序必需穷举排列的所有情况。Schema可以利用xs:all来表示无序的情况。
5、对命名空间的支持。DTD无法利用XML的命名空间,Schema很好满足命名空间。并且,Schema还提供了include和import两种引用命名空间的方法。
5 参考文章
Schema和DTD的区别
위 내용은 XML이란 무엇입니까? XML 설명 예시의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

RSS의 XML 구조에는 다음이 포함됩니다. 1. XML 선언 및 RSS 버전, 2. 채널 (채널), 3. 항목. 이러한 부분은 RSS 파일의 기초를 형성하여 사용자가 XML 데이터를 구문 분석하여 컨텐츠 정보를 얻고 처리 할 수 있도록합니다.

rssfeedsUsexMlTOSYNDICATECONTENT; parsingTheMinVolvesRoadingXML, NavigatingItsStructure 및 extractingData.ApplicationSaggregatorsAngAggeratsAndTrackingPodCastePisOdes.

RSS 문서는 XML 파일을 통해 컨텐츠 업데이트를 게시하여 작동하며 사용자는 RSS 리더를 통해 구독하고 알림을받습니다. 1. Content Publisher는 RSS 문서를 생성하고 업데이트합니다. 2. RSS 리더는 XML 파일에 정기적으로 액세스하고 구문 분석합니다. 3. 사용자는 업데이트 된 콘텐츠를 탐색하고 읽습니다. 사용의 예 : TechCrunch의 RSS 피드를 구독하고 RSS 리더에게 링크를 복사하기 만하면됩니다.

XML을 사용하여 RSSFEED를 구축하는 단계는 다음과 같습니다. 1. 루트 요소를 만들고 버전을 설정하십시오. 2. 채널 요소와 기본 정보를 추가하십시오. 3. 제목, 링크 및 설명을 포함하여 항목 요소를 추가하십시오. 4. XML 구조를 문자열로 변환하고 출력하십시오. 이 단계를 사용하면 출시 날짜 및 저자 정보와 같은 추가 요소를 추가하여 유효한 RSSFeed를 처음부터 시작하고 기능을 향상시킬 수 있습니다.

RSS 문서를 작성하는 단계는 다음과 같습니다. 1. 요소를 포함하여 루트 요소와 함께 XML 형식으로 쓰십시오. 2. 채널 정보를 설명하기위한 요소를 추가합니다. 3. 요소를 추가, 각각 컨텐츠 항목을 나타내는 요소를 추가하십시오 .,,,,,,,,,,,,,,,,, 4. 컨텐츠를 풍부하게하기 위해 선택적으로 추가 및 요소. 5. XML 형식이 올바른지 확인하고 온라인 도구를 사용하여 성능을 확인하고 최적화하며 콘텐츠를 업데이트하십시오.

RSS에서 XML의 핵심 역할은 표준화되고 유연한 데이터 형식을 제공하는 것입니다. 1. XML의 구조 및 마크 업 언어 특성은 데이터 교환 및 스토리지에 적합합니다. 2. RSS는 XML을 사용하여 컨텐츠 공유를 용이하게하기 위해 표준화 된 형식을 만듭니다. 3. RSS에서 XML의 적용에는 제목 및 출시 날짜와 같은 피드 컨텐츠를 정의하는 요소가 포함됩니다. 4. 표준화 및 확장 성이 포함되며, 문제에는 문서 장황 및 엄격한 구문 요구 사항이 포함됩니다. 모범 사례에는 XML 유효성 검증, 간단한 유지, CDATA 사용 및 정기적으로 업데이트가 포함됩니다.

RSSFEEDSAREXMLDOCUMentsORMUSSEDFORCONTENGAGNEGANGANDANDAND 및 DISTIBLITION.TOTRANSFORMTHEMINTOREADBECONCONTENT : 1) PARSETHEXMLUSINGLIBRARIES LIKEFEDPARSERINPYTHON.2) HORDLEDIFFERENTSSSSSSONS 및 POTELINGEPARSINGERRORS.3) 변형 된 정보 형식 FrrONTLIKETLIKET

JSONFEED는 JSON 기반 RSS 대안으로 단순성과 사용 편의성을 갖는 장점이 있습니다. 1) JSONFEED는 JSON 형식을 사용하여 생성 및 구문 분석이 쉽습니다. 2) 동적 생성을 지원하며 현대 웹 개발에 적합합니다. 3) JSONFEED를 사용하면 컨텐츠 관리 효율성과 사용자 경험이 향상 될 수 있습니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)
