ASP.NET XmlDocument 클래스 상세 설명
1.속성:
Attributes 는 이 노드 의 속성 을 포함 하 는 XmlAttribute Collection 을 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
BaseURI 현재 노드 의 기본 URI 가 져 오기(XmlNode 를 다시 씁 니 다.::.BaseURI.)
ChildNodes 에서 노드 의 모든 하위 노드 를 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
DocumentElement 에서 문서 의 루트 XmlElement 를 가 져 옵 니 다.
DocumentType 은 DOCTYPE 성명 을 포함 하 는 노드 를 가 져 옵 니 다.
First Child 노드 의 첫 번 째 키 레벨 을 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
HasChildNodes 에서 값 을 가 져 옵 니 다.이 값 은 노드 에 어떤 하위 노드 가 있 는 지 를 표시 합 니 다.(XmlNode 에서 계승 합 니 다.)
Implementation 현재 문서 의 XmlImplementation 대상 을 가 져 옵 니 다.
InnerText 노드 와 모든 하위 노드 의 직렬 값 을 가 져 오 거나 설정 합 니 다.(XmlNode 에서 계승 합 니 다.)
InnerXml 현재 노드 의 하위 단 계 를 표시 하 는 표 시 를 가 져 오 거나 설정 합 니 다.(XmlNode 를 다시 씁 니 다.:.InnerXml.)
IsReadOnly 는 현재 노드 가 읽 기만 하 는 지 여 부 를 표시 하 는 값 을 가 져 옵 니 다.(XmlNode 를 다시 씁 니 다.:.IsReadOnly.)
아 이 템 이 다시 실 렸 습 니 다.
LastChild 노드 의 마지막 하위 레벨 을 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
LocalName 에서 노드 의 로 컬 이름 을 가 져 옵 니 다.(XmlNode 를 다시 씁 니 다.:.LocalName.)
Name 노드 의 한 정 된 이름 을 가 져 옵 니 다.(XmlNode 를 다시 씁 니 다.:.Name.)
NamespaceURI 는 이 노드 의 네 임 스페이스 URI 를 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
Nametable 은 이와 연 결 된 XmlNametable 을 가 져 옵 니 다.
NextSibling 이 노드 에 이 어 진 노드 를 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
NodeType 은 현재 노드 의 종 류 를 가 져 옵 니 다.(XmlNode 를 다시 씁 니 다.:.Node Type.)
OuterXml 이 노드 와 모든 하위 노드 를 표시 하 는 표 시 를 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
OwnerDocument 는 현재 노드 에 속 한 XmlDocument 를 가 져 옵 니 다.(XmlNode 를 다시 씁 니 다.:.ownerDocument.)
ParentNode 무 거 운 짐 을 실 었 습 니 다.
Prefix 이 노드 의 네 임 스페이스 접 두 사 를 가 져 오 거나 설정 합 니 다.(XmlNode 에서 계승 합 니 다.)
PreserveWhitespace 값 을 가 져 오 거나 설정 합 니 다.이 값 은 요소 내용 에 공백 을 유지 할 지 여부 입 니 다.
Previous Sibling 은 이 노드 앞 에 있 는 노드 를 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.)
SchemaInfo 가 노드 의 후 구조 검증 정보 집합(PSVI)을 되 돌려 줍 니 다.(XmlNode 를 다시 씁 니 다.::.schemaInfo.)
Schemas 는 이 XmlDocument 와 연 결 된 XmlSchemaset 대상 을 가 져 오 거나 설정 합 니 다.
Value 노드 의 값 을 가 져 오 거나 설정 합 니 다.(XmlNode 에서 계승 합 니 다.)
XmlResolver 는 외부 자원 을 분석 하기 위해 XmlResolver 를 설정 합 니 다.
방법
AppendChild 지정 한 노드 를 이 노드 의 하위 노드 목록 의 끝 에 추가 합 니 다.(XmlNode 에서 계승 합 니 다.)
Clone 이 노드 의 복사 본 을 만 듭 니 다.(XmlNode 에서 계승 합 니 다.)
CloneNode 이 노드 의 복사 본 을 만 듭 니 다.(XmlNode 를 다시 씁 니 다.::.CloneNode(Boolean).
CreateAttribute 가 다시 불 러 왔 습 니 다.지정 한 이름 을 가 진 XmlAttribute 를 만 듭 니 다.
CreateCDataSection 지정 한 데 이 터 를 포함 하 는 XmlCDataSection 을 만 듭 니 다.
CreateComment 지정 한 데 이 터 를 포함 하 는 XmlComment 을 만 듭 니 다.
CreateDefaultAttribute 지정 한 접두사,로 컬 이름과 네 임 스페이스 URI 가 있 는 기본 속성 을 만 듭 니 다.
CreateDocumentFragment XmlDocumentFragment 를 만 듭 니 다.
CreateDocumentType 새 XmlDocumentType 대상 을 되 돌려 줍 니 다.
CreateElement 무 거 운 짐 을 실 었 습 니 다.XmlElement 를 만 듭 니 다.
CreateEntityReference 지정 한 이름 을 가 진 XmlEntity Reference 를 만 듭 니 다.
CreateNavigator 가 다시 불 러 왔 습 니 다.이 문 서 를 탐색 할 새 XPath Navigator 대상 을 만 듭 니 다.
CreateNode 무 거 운 짐 을 실 었 습 니 다.XmlNode 를 만 듭 니 다.
CreateProcessingInstruction 은 지정 한 이름과 데 이 터 를 가 진 XmlProcessingInstruction 을 만 듭 니 다.
CreateSignificantWhitespace 는 XmlSignificantWhitespace 노드 를 만 듭 니 다.
CreateTextNode 에서 지정 한 텍스트 가 있 는 XmlText 를 만 듭 니 다.
Create Whitespace 에서 XmlWhitespace 노드 를 만 듭 니 다.
CreateXmlDeclaration 지정 한 값 을 가 진 XmlDeclaration 노드 를 만 듭 니 다.
GetElement ById 에서 지정 한 ID 를 가 진 XmlElement 를 가 져 옵 니 다.
GetElementsByTagName 무 거 운 짐 을 실 었 습 니 다.지정 한 이름과 일치 하 는 모든 하위 요소 의 목록 을 포함 하 는 XmlNodeList 를 되 돌려 줍 니 다.
GetEnumerator 는 XmlNode 의 노드 에 있 는"for each"스타일 의 교체 에 대한 지원 을 제공 합 니 다.(XmlNode 에서 계승 합 니 다.)
GetHashCode 특정 유형의 해시 함수 로 사용 합 니 다.(Object 로부터 상속 합 니 다.)
GetNamespaceOfPrefix 현재 노드 범위 내 에서 주어진 접두사 에서 가장 가 까 운 xmlns 성명 을 찾 고 성명 의 네 임 스페이스 URI 를 되 돌려 줍 니 다.(XmlNode 에서 계승 합 니 다.)
GetPrefixOfNamespace 현재 노드 범위 내 에서 주어진 네 임 스페이스 URI 에서 가장 가 까 운 xmlns 성명 을 찾 고 성명 에서 정 의 된 접 두 사 를 되 돌려 줍 니 다.(XmlNode 에서 계승 합 니 다.)
ImportNode 는 노드 를 다른 문서 에서 현재 문서 로 가 져 옵 니 다.
InsertAfter 지정 한 노드 를 지정 한 참조 노드 에 바로 삽입 한 후(XmlNode 에서 계승 합 니 다.)
InsertBefore 는 지정 한 노드 를 지정 한 참조 노드 에 바로 삽입 하기 전에(XmlNode 에서 계승 합 니 다.)
Load 무 거 운 짐 을 실 었 습 니 다.Stream,URL,TextReader 또는 XmlReader 에서 지정 한 XML 데 이 터 를 불 러 옵 니 다.
LoadXml 지정 한 문자열 에서 XML 문 서 를 불 러 옵 니 다.
Normalize 는 이 XmlNode 하위 트 리 의 완전 깊이 에 있 는 모든 XmlText 노드 를'정상'형식 으로 변환 합 니 다.이 형식 에 서 는 XmlText 노드(즉,태그,주석,처리 명령,CDATA 절 과 실체 참조)만 구분 합 니 다.즉,인접 한 XmlText 노드 가 없습니다.(XmlNode 에서 계승 합 니 다.)
PrependChild 는 지정 한 노드 를 이 노드 의 하위 노드 목록 의 시작 에 추가 합 니 다.(XmlNode 에서 계승 합 니 다.)
ReadNode XmlReader 의 정보 에 따라 XmlNode 대상 을 만 듭 니 다.판독 기 는 노드 나 속성 에 위치 해 야 합 니 다.
RemoveAll 현재 노드 의 모든 하위 노드 와/또는 속성 을 제거 합 니 다.(XmlNode 에서 계승 합 니 다.)
RemoveChild 지정 한 하위 노드 를 제거 합 니 다.(XmlNode 에서 계승 합 니 다.)
ReplaceChild 는 new Child 노드 로 하위 노드 oldChild 를 교체 합 니 다.(XmlNode 에서 계승 합 니 다.)
Save 가 다시 불 러 왔 습 니 다.XML 문 서 를 지정 한 위치 에 저장 합 니 다.
SelectNodes 무 거 운 짐 을 실 었 습 니 다.
SelectSingleNode 가 다시 불 러 왔 습 니 다.
Supports 는 DOM 이 특정한 기능 을 실현 하 는 지 테스트 합 니 다.(XmlNode 에서 계승 합 니 다.)
Validate 가 다시 실 렸 습 니 다.XmlDocument 가 Schemas 속성 에 포 함 된 XML 구조 정의 언어(XSD)구조 인지 검증 합 니 다.
Write ContentTo 는 XmlDocument 노드 의 모든 하위 단 계 를 지정 한 XmlWriter 에 저장 합 니 다.(XmlNode 를 다시 씁 니 다.:.Write ContentTo(XmlWriter).
WriteTo 는 XmlDocument 노드 를 지정 한 XmlWriter 에 저장 합 니 다.(XmlNode 를 다시 씁 니 다.:.WriteTo(XmlWriter).
사건
NodeChanged 는 이 문서 의 노드 에 속 하 는 Value 가 변경 되 었 을 때 발생 합 니 다.
NodeChanging 은 이 문서 의 노드 에 속 하 는 Value 가 변 경 될 때 발생 합 니 다.
NodeInserted 이 문서 에 속 하 는 노드 가 다른 노드 에 삽입 되 었 을 때 발생 합 니 다.
NodeInserting 은 이 문서 에 속 하 는 노드 가 다른 노드 에 삽 입 될 때 발생 합 니 다.
NodeRemoved 는 이 문서 에 속 하 는 노드 가 부모 에서 제거 되 었 을 때 발생 합 니 다.
NodeRemoving 이 문서 에 속 하 는 노드 가 문서 에서 제 거 될 때 발생 합 니 다.
보조 속성:
Previous Sibling 이전 형제 노드
다음 형제 노드
First Child 첫 번 째 키 노드
LastChild 마지막 키 노드
ChildNodes 서브 노드 집합
ParentNode 부모 노드
코드 예제:
xml 문서:
<?xml version="1.0" encoding="utf-8" ?>
<Article>
<author age="30"> </author>
<length>12000</length>
<price>42</price>
</Article>
코드:
static void Main(string[] args)
{
XmlDocument doc = new XmlDocument();
doc.Load(@"C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\Test.xml");
// Article ,
XmlAttributeCollection xc = doc.SelectSingleNode("Article").FirstChild.Attributes;
string age = xc[0].Value; // , //string age = xc["age"].Value;
Console.WriteLine(age); // 30
string baseuri = doc.SelectSingleNode("Article").FirstChild.BaseURI;
Console.WriteLine(baseuri); // file:///C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\Test.xml
XmlNodeList listNode = doc.SelectSingleNode("Article").ChildNodes; // Article
for (int i = 0; i < listNode.Count;i++ ) //XmlNodeList foreach , for
{
Console.Write(listNode[i].Name + " : " + listNode[i].InnerText); // author: length:12000 price:30 Name ,
}
XmlElement xe = doc.DocumentElement; //
Console.WriteLine(xe.Name); // Article
//XmlDocumentType xdt = doc.DocumentType; // DOCTYPE 。 DTD 。
//Console.Write(xdt.Name); // , DOCTYPE
Console.WriteLine(doc.HasChildNodes); // True Document 。
//XmlImplementation xi = doc.Implementation; //
//xi.ToString();
Console.WriteLine(doc.InnerText); // 12000 30
Console.WriteLine(doc.InnerXml); // Xml
Console.WriteLine(doc.IsReadOnly); // 。 False
XmlNode node = doc.LastChild;
Console.WriteLine(node.InnerText); // 12000 30 Article , Article
Console.WriteLine(doc.LocalName); // #document
Console.WriteLine(doc.SelectSingleNode("Article").Name); // Article
Console.WriteLine(doc.SelectSingleNode("Article").FirstChild.NextSibling.Name); //length author length
XmlNodeType xnt = doc.SelectSingleNode("Article").NodeType;
Console.WriteLine(xnt); // Element,
string str = doc.SelectSingleNode("Article").OuterXml; // , Article <Article> ...</Article>
Console.WriteLine(str);
XmlDocument x = new XmlDocument();
x.LoadXml(str);
Console.WriteLine(doc.SelectSingleNode("Article").OwnerDocument); // XmlDocument
XmlNode xn = doc.SelectSingleNode("Article").LastChild.ParentNode; //ParentNode 。
Console.WriteLine(xn.Name); // Article
Console.WriteLine(doc.PreserveWhitespace); // False
XmlNode xn1 = doc.SelectSingleNode("Article").LastChild.PreviousSibling;
Console.WriteLine(xn1.Name); // length 。
Console.ReadKey();
}
속성 을 더 잘 보 여주 기 위해 xml 을 이렇게 바 꿉 니 다.
<?xml version="1.0" encoding="utf-8" ?>
<h:Article xmlns:h = "http://www.xxx.com/">
<!-- -->
<h:author age="30"> </h:author>
<h:length>12000</h:length>
<h:price>42</h:price>
</h:Article>
코드 는 다음 과 같 습 니 다:
static void Main(string[] args)
{
XmlDocument doc = new XmlDocument();
doc.Load(@"C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\Test.xml");
XmlNamespaceManager xnm = new XmlNamespaceManager(doc.NameTable);
xnm.AddNamespace("h", "http://www.xxx.com/");
XmlNode Article = doc.SelectSingleNode("h:Article", xnm);
string namespace1 = Article.InnerText;
Console.WriteLine(namespace1); // 12000 30
Console.WriteLine(Article.Prefix); // h
Console.WriteLine(Article.NamespaceURI); // http://www.xxx.com/123
Console.WriteLine(Article.FirstChild.Name + "---" + Article.FirstChild.Value + "---" + Article.FirstChild.LocalName);
// h:author------author
//SchemaInfo (PSVI)。//Value 。 ( XmlNode。)
//XmlResolver XmlResolver 。
Console.ReadKey();
}
Schemas 라 는 속성 을 하나 더 보 여 드릴 게 요.
static void Main(string[] args)
{
XmlDocument doc = new XmlDocument(); //
doc.Schemas.Add(null, @"C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\person.xsd"); // XmlDocument
doc.Load(@"C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\person.xml"); // xml
Console.WriteLine(doc.Schemas.Count); // 1
Console.WriteLine(doc.SchemaInfo.MemberType);
//XmlResolver XmlResolver 。
Console.ReadKey();
}
다음은 XmlDocument 의 방법 을 시험 해 보 겠 습 니 다.Test.xml 코드 는 다음 과 같 습 니 다.
<?xml version="1.0" encoding="utf-8" ?>
<bookstore>
<book>
<id>1</id>
<title lang=" 1"> </title>
<author> </author>
<year>2005</year>
<price id='a1"'>38.5</price>
</book>
<book>
<id>2</id>
<title lang=" 2"> </title>
<author> </author>
<year>2004</year>
<price>37.5</price>
</book>
</bookstore>
주 프로그램 코드 는 다음 과 같 습 니 다.
static void Main(string[] args)
{
XmlDocument doc = new XmlDocument(); //
doc.Load(@"C:\Users\Administrator\Desktop\ConsoleApplication1\ConsoleApplication1\Test.xml"); // xml
XmlNode node1 = doc.CreateNode(XmlNodeType.Element, "pagecount", null);
node1.InnerText = "222";
doc.SelectSingleNode("/bookstore").AppendChild(node1); // <pagecount>222</pagecount> </bookstore>
doc.Save(@"D:\123.xml");
XmlNode node2 = doc.SelectSingleNode("/bookstore/book[1]/title[1]").Clone(); //
Console.WriteLine(node2.InnerText); //
XmlNode node3 = doc.SelectSingleNode("/bookstore/book[1]/title[1]").CloneNode(true); // ( false, )
Console.WriteLine(node3.InnerText); //
XmlAttribute attr = doc.CreateAttribute("age"); // age
attr.Value = "23";
doc.SelectSingleNode("/bookstore/book[1]/author[1]").Attributes.Append(attr); // <author age="23"> </author>
doc.Save(@"D:\123.xml");
XmlCDataSection cdata = doc.CreateCDataSection(" & ");
doc.SelectSingleNode("/bookstore/book[1]/author[1]").AppendChild(cdata); // author <author age="23"> <![CDATA[ & ]]></author>
doc.Save(@"D:\123.xml");
XmlComment com = doc.CreateComment("2013-2-27 22:37:25");
doc.SelectSingleNode("/bookstore/book[1]/title[1]").AppendChild(com); // title <title lang=" 1"> <!--2013-2-27 22:37:25--></title>
doc.Save(@"D:\123.xml");
XmlDocument doc1 = new XmlDocument();
XmlDocumentFragment xdf = doc1.CreateDocumentFragment(); // xml ,
xdf.InnerXml = "<item>widget</item>";
doc1.AppendChild(xdf);
Console.WriteLine(doc1.OuterXml); // <item>widget</item>
//CreateDefaultAttribute 、 URI 。
//CreateDocumentType XmlDocumentType 。
XmlDocument doc2 = new XmlDocument();
XmlElement element = doc2.CreateElement("title"); // title <title/>
doc2.AppendChild(element);
XmlEntityReference xer = doc2.CreateEntityReference("h");
doc2.LastChild.AppendChild(xer);
Console.WriteLine(doc2.OuterXml); // </title>&h;</title>
XPathNavigator nav = doc2.CreateNavigator(); // XML
XmlText text = doc2.CreateTextNode(" "); //
doc2.SelectSingleNode("/title").AppendChild(text);
Console.WriteLine(doc2.OuterXml); // </title>&h; </title>
XmlWhitespace xws = doc2.CreateWhitespace(" "); //
doc2.SelectSingleNode("/title").AppendChild(xws);
Console.WriteLine(doc2.OuterXml); // </title>&h; </title>
XmlDeclaration xd = doc2.CreateXmlDeclaration("1.0", "utf-8", "yes"); //xml XML
XmlNode root = doc2.SelectSingleNode("/title");
doc2.InsertBefore(xd, root);
Console.WriteLine(doc2.OuterXml); // <?xml version="1.0" encoding="utf-8" standalont="yes"?>
XmlSignificantWhitespace xsw = doc2.CreateSignificantWhitespace(" ");
XmlElement ele = doc2.CreateElement("white");
ele.InnerText = " ";
ele.AppendChild(xsw);
doc2.SelectSingleNode("/title").AppendChild(ele);
Console.WriteLine(doc2.OuterXml); // , CreateWhitespace
XmlDocument doc3 = new XmlDocument();
String PItext = "type='text/xsl' href='book.xsl'";
XmlProcessingInstruction newPI = doc3.CreateProcessingInstruction("xml-stylesheet", PItext);
doc3.AppendChild(newPI);
Console.WriteLine(doc3.OuterXml); // <?xml-stylesheet type="text/xsl" hred="book.xsl"?>
//GetElementById ID XmlElement。
//GetElementsByTagName 。 XmlNodeList, 。
//GetEnumerator XmlNode “for each” 。 ( XmlNode。)
//GetNamespaceOfPrefix xmlns , URI。 ( XmlNode。)
//GetPrefixOfNamespace URI xmlns , 。 ( XmlNode。)
//ImportNode 。
//InsertAfter 。 ( XmlNode。)
//InsertBefore 。 ( XmlNode。)
//LoadXml XML 。
//Normalize XmlNode XmlText “ ” , ( 、 、 、 CDATA ) XmlText , , XmlText 。 ( XmlNode。)
//PrependChild 。 ( XmlNode。)
//ReadNode XmlReader XmlNode 。 。
//RemoveAll / 。 ( XmlNode。)
//RemoveChild 。 ( XmlNode。)
//ReplaceChild newChild oldChild。 ( XmlNode。)
//Supports DOM 。 ( XmlNode。)
//Validate 。 XmlDocument Schemas XML (XSD) 。
//WriteContentTo XmlDocument XmlWriter 。 ( XmlNode..::.WriteContentTo(XmlWriter)。)
//WriteTo XmlDocument XmlWriter。 ( XmlNode..::.WriteTo(XmlWriter)。)
Console.ReadKey();
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ASP.NET XmlDocument 클래스 상세 설명Attributes 는 이 노드 의 속성 을 포함 하 는 XmlAttribute Collection 을 가 져 옵 니 다.(XmlNode 에서 계승 합 니 다.) ChildNodes 에서 노드 의 모든 하위 노드 를...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.