내용 읽기
업데이트: November 2007
XmlReader 클래스에는 내용을 읽는 데 사용할 수 있는 멤버가 포함됩니다.
참고: |
---|
이 항목에서 설명하는 멤버는 내용을 문자열 값으로 반환합니다. 입력한 내용을 읽으려면 형식화된 데이터 읽기를 참조하십시오. |
값 속성
Value 속성을 사용하여 현재 노드의 텍스트 내용을 얻을 수 있습니다. 반환되는 값은 현재 노드의 형식에 따라 다릅니다. 다음 표에서는 가능한 노드 형식 각각에 대해 반환되는 내용을 설명합니다.
노드 형식 |
값 |
---|---|
Attribute |
특성 값입니다. |
CDATA |
CDATA 섹션 내용입니다. |
Comment |
주석의 내용입니다. |
DocumentType |
내부 하위 집합입니다. |
ProcessingInstruction |
대상을 제외한 전체 내용입니다. |
SignificantWhitespace |
혼합 내용 모델에서 태그 사이의 공백입니다. |
Text |
텍스트 노드의 내용입니다. |
Whitespace |
태그 사이의 공백입니다. |
XmlDeclaration |
선언 내용입니다. |
기타 모든 노드 형식 |
빈 문자열입니다. |
ReadString 메서드
ReadString 메서드는 요소 또는 텍스트 노드의 내용을 문자열로 반환합니다.
XmlReader가 요소에 있을 경우 ReadString은 모든 텍스트, 유효 공백, 공백 및 CDATA 섹션 노드를 모두 연결하고 연결된 데이터를 요소 내용으로 반환합니다. 태그가 나타나면 판독기가 중지됩니다. 이러한 동작은 혼합 내용 모델에서 발생하거나 요소 끝 태그를 읽을 때 발생할 수 있습니다.
XmlReader가 텍스트 노드에 있을 경우 ReadString은 텍스트, 유효 공백, 공백 및 CDATA 섹션 노드를 연결합니다. 이전에 명명된 형식이 아닌 첫 번째 노드에서 판독기가 중지됩니다. 판독기가 특성 텍스트 노드에 있을 경우 ReadString에는 판독기가 요소 시작 태그에 있을 때와 같은 기능이 있습니다. 연결된 모든 요소 텍스트 노드를 반환합니다.
참고: |
---|
ReadString 메서드는 처리 명령과 주석에서 중지하며 처리 명령과 주석을 무시하지 않습니다. |
ReadInnerXml 메서드
ReadInnerXml 메서드는 태그를 포함하여 현재 노드의 모든 내용을 반환합니다. 현재 노드(시작 태그)와 해당 끝 노드(끝 태그)는 반환되지 않습니다. 예를 들어, XML 문자열 <node>this<child id="123"/></node>가 있을 경우 ReadInnerXml은 this<child id="123"/>을 반환합니다.
다음 표에서는 요소 및 특성 노드를 처리하는 방법을 설명합니다.
노드 형식 |
초기 위치 |
XML 조각 |
반환 값 |
사후 위치 |
---|---|---|---|---|
Element |
item1 시작 태그에 있습니다. |
<item1>text1</item1><item2>text2</item2> |
text1 |
item2 시작 태그에 있습니다. |
Attribute |
attr1 특성 노드에 있습니다. |
<item attr1="val1" attr2="val2">text</item> |
val1 |
attr1 특성 노드에 남아 있습니다. |
판독기가 리프 노드에 있을 경우 ReadInnerXml을 호출하는 것과 Read를 호출하는 것은 같습니다.
ReadOuterXml 메서드
ReadOuterXml 메서드는 태그를 포함하여 현재 노드와 모든 자식 노드의 모든 XML 내용을 반환합니다. 이 메서드의 동작은 ReadInnerXml과 유사하지만 시작 태그와 끝 태그도 반환한다는 점이 다릅니다.
위 표의 값을 사용하면 판독기가 item1 시작 태그에 있을 경우 ReadOuterXml은 <item1>text1</item1>을 반환합니다. 판독기가 attr1 특성 노드에 있을 경우 ReadOuterXml은 attr1="val1"을 반환합니다.