C# 클래스 NSoft.NFramework.Xml.XmlDoc

상속: System.Xml.XmlDocument
파일 보기 프로젝트 열기: debop/NFramework 1 사용 예제들

공개 메소드들

메소드 설명
AddAttribute ( XmlNode parentNode, XmlAttribute srcAttribute ) : XmlAttribute

parentNode에 Attribute를 추가한다.

AddAttribute ( XmlNode parentNode, string name, object attrValue ) : XmlAttribute

parentNode에 새로운 Attribute를 추가한다.

AddAttribute ( XmlNode parentNode, string name, object attrValue, bool replace ) : XmlAttribute

parentNode에 새로운 Attribute를 추가한다.

AddCDataSection ( XmlNode parentNode, string cdata ) : XmlCDataSection

XmlCDataSection Node를 부모 노드에 추가한다. (<![CDATA[ xxxx ]]>)

AddComment ( XmlNode parentNode, string comment ) : XmlComment

XmlCommend Node를 추가한다.

AddElement ( XmlNode parentNode, XmlElement srcNode ) : XmlElement

부모 노드에 원본 노드의 복사본을 추가한다.

AddElement ( XmlNode parentNode, string name, string text ) : XmlElement

부모노드에 지정된 이름과 지정된 Text 값을 가진 XmlElement를 Parent Node에 추가한다.

AddElementText ( XmlNode parentNode, string name, string text ) : XmlElement

XmlElement를 생성하여 부모 노드에 추가한다.

AddElementXml ( XmlNode parentNode, string xmlText ) : XmlElement

Xml 문자열을 XmlDocument로 만들어서 Root Node를 부모 노드의 자식 노드로 추가한다.

AddEntity ( XmlNode parentNode, string name ) : XmlEntity

부모노드에 XmlEntity를 추가한다.

AddEntityRef ( XmlNode parentNode, string name ) : XmlEntityReference

parentNodeXmlEntityReference를 추가한다.

AddFileElement ( XmlNode parentNode, string name, string filename ) : XmlElement

XML Element로 파일 내용을 넣는다
파일내용은 bin.base64 형태로 XML string을 만들어서 XmlElement의 InnerText로 넣는다.

파일 내용을 XML DOM에 넣어서 기존의 MSXML2.IXmlHttp를 사용하면 속도문제가 크다.
.NET Version에서는 XMLHttp를 WebHttpRequest/WebHttpResponse를 사용하므로 문제없다. Client용 Application 중 MSXML 2,3,4를 사용하면 속도문제는 해결되지 않는다.

AddNode ( XmlNode parentNode, System.Xml.XmlNodeType nodeType, string name, string text ) : XmlNode

부모 노드에 노드를 추가한다.

AddPI ( XmlNode parentNode, string target, string data ) : XmlProcessingInstruction

Processing Instruction Node를 추가한다.

AddTextNode ( XmlNode parentNode, string text ) : XmlText

Text Node를 추가한다.

FindNode ( XmlNode parentNode, string xpath ) : XmlNode

지정된 노드내에서 XmlNode를 찾는다.

FindNode ( string xpath ) : XmlNode

XmlNode를 찾는다.

GetAttributeNode ( XmlElement node, string name ) : XmlAttribute

Element 내의 지정한 이름의 Attribute를 반환한다.

GetElement ( XmlNode parentNode, string xpath ) : XmlElement

XmlElement를 찾는다.

GetElement ( string xpath ) : XmlElement

xpath로 검색한 XmlElement 노드를 반환한다. - XmlDoc.FindElement(string)와 같다.

GetElementText ( XmlNode parentNode, string xpath ) : string

parentNode를 기준으로 XmlElement를 찾아서 InnerText값을 반환한다.

GetElementText ( string xpath ) : string

XmlElement를 찾아서 InnerText값을 반환한다.

GetElementTextArray ( string xpath ) : string[]

xpath에 해당하는 XmlElement 들을 찾아서 Element의 Text 를 string array로 반환한다.

InsertElementBefore ( XmlElement refNode, XmlElement newNode ) : XmlElement

새로운 XmlElement를 refNode 앞에 추가한다.

InsertElementBefore ( XmlElement refNode, string xml ) : XmlElement

새로운 XmlElement를 refNode 앞에 추가한다.

InsertElementBefore ( XmlElement refNode, string name, string text ) : XmlElement

새로운 XmlElement를 refNode 앞에 추가한다.

IsValidNodeIndex ( int index ) : bool

속도가 느리기 때문에 사용하지 안는 것이 좋다.

IsValidTagName ( string tagName ) : bool

Element의 TagName은 문자, '_', ':' 만 가능하다. 되도록 Element Tag Name에 특수 문자를 사용하지 마시요.

이 함수는 되도록 사용하지 마십시요. DOM을 생성해서 TEST하는 것이므로 속도가 매우 느립니다.

RemoveElement ( XmlElement element ) : bool

지정된 Element를 삭제한다.

RemoveElement ( XmlNode parentNode, string xpath ) : bool

Element Node를 찾아서 삭제한다.

RemoveNamedItem ( XmlNamedNodeMap nodeMap, XmlNode node ) : XmlNode

NamedNodeMap에서 해당 node를 삭제한다.

RemoveNamedItem ( XmlNamedNodeMap nodeMap, string nodeName ) : XmlNode

NamedNodeMap(대부분 XmlAttributeCollection)에서 해당 node를 삭제한다.

RemoveSelection ( string xpath ) : int

xpath로 찾은 모든 XmlNode를 삭제한다.

SaveFileElement ( XmlElement fileNode, string filename ) : string

File 정보를 담고 있는 XmlElement를 filename으로 저장한다.

SaveFileElement ( XmlElement fileNode, string filename, bool overwrite ) : string

File 정보를 담고 있는 XmlElement를 filename으로 저장한다.

SaveToFile ( string filename ) : void

Xml 내용을 파일로 저장한다.

SaveToTemp ( string filename ) : void

Xml 내용을 System Temporary Directory에 저장한다.

SetElementText ( string xpath, string text ) : void

xpath로 찾은 Element의 InnerText값을 지정한다.

SetNamedItem ( XmlNamedNodeMap nodeMap, XmlNode node ) : XmlNode

XmlNamedNodeMap에 Node를 추가한다.

SetNamedItem ( XmlNamedNodeMap nodeMap, string name, string value ) : XmlNode

XmlNamedNodeMap에 Node를 추가한다.

XmlDoc ( ) : System

기본 생성자

XmlDoc ( Stream stream ) : System

stream 정보를 읽어서 XmlDocument 인스턴스를 생성한다.

XmlDoc ( Uri uri ) : System

생성자 ( System.Uri 개체의 AbsoluteUri 속성을 통해 XmlDocument를 생성합니다.

XmlDoc ( XmlDocument document ) : System

생성자 - document을 읽어서 새로운 XmlDocument 인스턴스를 생성한다.

XmlDoc ( string xmlText ) : System

주어진 xml 문자열이 순수 XML string이거나 URI 이거나 모두 load하여 XmlDocument를 구성한다.

보호된 메소드들

메소드 설명
CreateElementText ( string name, string text ) : XmlElement

Create a new instance of XmlElement with name and text

FindElement ( XmlNode parentNode, string xpath ) : XmlElement

xpath에 해당하는 XmlElement를 지정된 parentNode 자식 노드에서 검색하여 반환한다.

FindElement ( string xpath ) : XmlElement

xpath에 해당하는 XmlElement를 XmlDocument 전체에서 검색하여 반환한다.

FindElements ( XmlNode parentNode, string xpath ) : XmlNodeList

parentNode에서 xpath에 해당하는 모든 XmlElement를 리스트로 반환한다.

FindElements ( string xpath ) : XmlNodeList

XmlDoc에서 xpath에 해당하는 모든 XmlElement를 리스트로 반환한다.

IsNodeCanHaveChildNode ( XmlNode node ) : bool

node가 자식 노드를 가질 수 있는지 판단한다.

비공개 메소드들

메소드 설명
CreateElementXml ( string xml ) : XmlElement

메소드 상세

AddAttribute() 공개 메소드

parentNode에 Attribute를 추가한다.
parentNode가 null일 때
public AddAttribute ( XmlNode parentNode, XmlAttribute srcAttribute ) : XmlAttribute
parentNode System.Xml.XmlNode 부모 노드
srcAttribute System.Xml.XmlAttribute 원본 XmlAttribute 객체
리턴 System.Xml.XmlAttribute

AddAttribute() 공개 메소드

parentNode에 새로운 Attribute를 추가한다.
public AddAttribute ( XmlNode parentNode, string name, object attrValue ) : XmlAttribute
parentNode System.Xml.XmlNode 부모 노드
name string 특성 이름
attrValue object 특성 값
리턴 System.Xml.XmlAttribute

AddAttribute() 공개 메소드

parentNode에 새로운 Attribute를 추가한다.
parentNode가 null일 때
public AddAttribute ( XmlNode parentNode, string name, object attrValue, bool replace ) : XmlAttribute
parentNode System.Xml.XmlNode 부모 노드
name string 특성 이름
attrValue object 특성 값
replace bool 기존 존재시 대체 여부
리턴 System.Xml.XmlAttribute

AddCDataSection() 공개 메소드

XmlCDataSection Node를 부모 노드에 추가한다. (<![CDATA[ xxxx ]]>)
parentNode가 null일 때
public AddCDataSection ( XmlNode parentNode, string cdata ) : XmlCDataSection
parentNode System.Xml.XmlNode 부모노드
cdata string CDataSection의 값
리턴 System.Xml.XmlCDataSection

AddComment() 공개 메소드

XmlCommend Node를 추가한다.
public AddComment ( XmlNode parentNode, string comment ) : XmlComment
parentNode System.Xml.XmlNode
comment string Commant Text
리턴 System.Xml.XmlComment

AddElement() 공개 메소드

부모 노드에 원본 노드의 복사본을 추가한다.
public AddElement ( XmlNode parentNode, XmlElement srcNode ) : XmlElement
parentNode System.Xml.XmlNode 부모 노드
srcNode System.Xml.XmlElement 복사할 대상 요소
리턴 System.Xml.XmlElement

AddElement() 공개 메소드

부모노드에 지정된 이름과 지정된 Text 값을 가진 XmlElement를 Parent Node에 추가한다.
public AddElement ( XmlNode parentNode, string name, string text ) : XmlElement
parentNode System.Xml.XmlNode
name string
text string XmlElement의 Text 속성
리턴 System.Xml.XmlElement

AddElementText() 공개 메소드

XmlElement를 생성하여 부모 노드에 추가한다.
public AddElementText ( XmlNode parentNode, string name, string text ) : XmlElement
parentNode System.Xml.XmlNode
name string Element Tag Name (Element의 TagName은 문자, '_', ':' 만 가능하다.)
text string Element Text Value
리턴 System.Xml.XmlElement

AddElementXml() 공개 메소드

Xml 문자열을 XmlDocument로 만들어서 Root Node를 부모 노드의 자식 노드로 추가한다.
public AddElementXml ( XmlNode parentNode, string xmlText ) : XmlElement
parentNode System.Xml.XmlNode
xmlText string
리턴 System.Xml.XmlElement

AddEntity() 공개 메소드

부모노드에 XmlEntity를 추가한다.
public AddEntity ( XmlNode parentNode, string name ) : XmlEntity
parentNode System.Xml.XmlNode 부모 노드
name string Entity 노드 이름
리턴 System.Xml.XmlEntity

AddEntityRef() 공개 메소드

parentNodeXmlEntityReference를 추가한다.
public AddEntityRef ( XmlNode parentNode, string name ) : XmlEntityReference
parentNode System.Xml.XmlNode 대상 노드
name string 추가할 의 이름
리턴 System.Xml.XmlEntityReference

AddFileElement() 공개 메소드

XML Element로 파일 내용을 넣는다
파일내용은 bin.base64 형태로 XML string을 만들어서 XmlElement의 InnerText로 넣는다.
파일 내용을 XML DOM에 넣어서 기존의 MSXML2.IXmlHttp를 사용하면 속도문제가 크다.
.NET Version에서는 XMLHttp를 WebHttpRequest/WebHttpResponse를 사용하므로 문제없다. Client용 Application 중 MSXML 2,3,4를 사용하면 속도문제는 해결되지 않는다.
public AddFileElement ( XmlNode parentNode, string name, string filename ) : XmlElement
parentNode System.Xml.XmlNode 부모 노드
name string 새로운 XML Element TagName
filename string DOM에 포함시킬 파일 이름(fullpath)
리턴 System.Xml.XmlElement

AddNode() 공개 메소드

부모 노드에 노드를 추가한다.
public AddNode ( XmlNode parentNode, System.Xml.XmlNodeType nodeType, string name, string text ) : XmlNode
parentNode System.Xml.XmlNode 부모노드
nodeType System.Xml.XmlNodeType System.Xml.XmlNodeType
name string Tag Name
text string Node Value or Text
리턴 System.Xml.XmlNode

AddPI() 공개 메소드

Processing Instruction Node를 추가한다.
public AddPI ( XmlNode parentNode, string target, string data ) : XmlProcessingInstruction
parentNode System.Xml.XmlNode
target string
data string
리턴 System.Xml.XmlProcessingInstruction

AddTextNode() 공개 메소드

Text Node를 추가한다.
public AddTextNode ( XmlNode parentNode, string text ) : XmlText
parentNode System.Xml.XmlNode
text string
리턴 System.Xml.XmlText

CreateElementText() 보호된 메소드

Create a new instance of XmlElement with name and text
protected CreateElementText ( string name, string text ) : XmlElement
name string XmlElement의 이름
text string XmlElement의 Inner Text
리턴 System.Xml.XmlElement

FindElement() 보호된 메소드

xpath에 해당하는 XmlElement를 지정된 parentNode 자식 노드에서 검색하여 반환한다.
protected FindElement ( XmlNode parentNode, string xpath ) : XmlElement
parentNode System.Xml.XmlNode 검색 기준이 되는 parent node
xpath string 검색 식
리턴 System.Xml.XmlElement

FindElement() 보호된 메소드

xpath에 해당하는 XmlElement를 XmlDocument 전체에서 검색하여 반환한다.
protected FindElement ( string xpath ) : XmlElement
xpath string 검색 식
리턴 System.Xml.XmlElement

FindElements() 보호된 메소드

parentNode에서 xpath에 해당하는 모든 XmlElement를 리스트로 반환한다.
protected FindElements ( XmlNode parentNode, string xpath ) : XmlNodeList
parentNode System.Xml.XmlNode 기준이 되는 parent node
xpath string 검색 식
리턴 System.Xml.XmlNodeList

FindElements() 보호된 메소드

XmlDoc에서 xpath에 해당하는 모든 XmlElement를 리스트로 반환한다.
protected FindElements ( string xpath ) : XmlNodeList
xpath string 검색 식
리턴 System.Xml.XmlNodeList

FindNode() 공개 메소드

지정된 노드내에서 XmlNode를 찾는다.
public FindNode ( XmlNode parentNode, string xpath ) : XmlNode
parentNode System.Xml.XmlNode 부모 노드
xpath string XPATH 형식 ("ROOT")
리턴 System.Xml.XmlNode

FindNode() 공개 메소드

XmlNode를 찾는다.
public FindNode ( string xpath ) : XmlNode
xpath string XPATH 형식 ("//ROOT")
리턴 System.Xml.XmlNode

GetAttributeNode() 공개 메소드

Element 내의 지정한 이름의 Attribute를 반환한다.
public GetAttributeNode ( XmlElement node, string name ) : XmlAttribute
node System.Xml.XmlElement
name string
리턴 System.Xml.XmlAttribute

GetElement() 공개 메소드

XmlElement를 찾는다.
public GetElement ( XmlNode parentNode, string xpath ) : XmlElement
parentNode System.Xml.XmlNode
xpath string
리턴 System.Xml.XmlElement

GetElement() 공개 메소드

xpath로 검색한 XmlElement 노드를 반환한다. - XmlDoc.FindElement(string)와 같다.
public GetElement ( string xpath ) : XmlElement
xpath string 검색 식
리턴 System.Xml.XmlElement

GetElementText() 공개 메소드

parentNode를 기준으로 XmlElement를 찾아서 InnerText값을 반환한다.
public GetElementText ( XmlNode parentNode, string xpath ) : string
parentNode System.Xml.XmlNode 검색 기준이 되는 parent node
xpath string 검색 식
리턴 string

GetElementText() 공개 메소드

XmlElement를 찾아서 InnerText값을 반환한다.
public GetElementText ( string xpath ) : string
xpath string 검색 식
리턴 string

GetElementTextArray() 공개 메소드

xpath에 해당하는 XmlElement 들을 찾아서 Element의 Text 를 string array로 반환한다.
public GetElementTextArray ( string xpath ) : string[]
xpath string
리턴 string[]

InsertElementBefore() 공개 메소드

새로운 XmlElement를 refNode 앞에 추가한다.
public InsertElementBefore ( XmlElement refNode, XmlElement newNode ) : XmlElement
refNode System.Xml.XmlElement
newNode System.Xml.XmlElement
리턴 System.Xml.XmlElement

InsertElementBefore() 공개 메소드

새로운 XmlElement를 refNode 앞에 추가한다.
public InsertElementBefore ( XmlElement refNode, string xml ) : XmlElement
refNode System.Xml.XmlElement
xml string
리턴 System.Xml.XmlElement

InsertElementBefore() 공개 메소드

새로운 XmlElement를 refNode 앞에 추가한다.
public InsertElementBefore ( XmlElement refNode, string name, string text ) : XmlElement
refNode System.Xml.XmlElement
name string
text string
리턴 System.Xml.XmlElement

IsNodeCanHaveChildNode() 보호된 메소드

node가 자식 노드를 가질 수 있는지 판단한다.
protected IsNodeCanHaveChildNode ( XmlNode node ) : bool
node System.Xml.XmlNode 검사할 노드
리턴 bool

IsValidNodeIndex() 공개 메소드

속도가 느리기 때문에 사용하지 안는 것이 좋다.
public IsValidNodeIndex ( int index ) : bool
index int
리턴 bool

IsValidTagName() 공개 정적인 메소드

Element의 TagName은 문자, '_', ':' 만 가능하다. 되도록 Element Tag Name에 특수 문자를 사용하지 마시요.
이 함수는 되도록 사용하지 마십시요. DOM을 생성해서 TEST하는 것이므로 속도가 매우 느립니다.
public static IsValidTagName ( string tagName ) : bool
tagName string Element의 TagName
리턴 bool

RemoveElement() 공개 메소드

지정된 Element를 삭제한다.
public RemoveElement ( XmlElement element ) : bool
element System.Xml.XmlElement
리턴 bool

RemoveElement() 공개 메소드

Element Node를 찾아서 삭제한다.
public RemoveElement ( XmlNode parentNode, string xpath ) : bool
parentNode System.Xml.XmlNode
xpath string
리턴 bool

RemoveNamedItem() 공개 메소드

NamedNodeMap에서 해당 node를 삭제한다.
public RemoveNamedItem ( XmlNamedNodeMap nodeMap, XmlNode node ) : XmlNode
nodeMap System.Xml.XmlNamedNodeMap
node System.Xml.XmlNode
리턴 System.Xml.XmlNode

RemoveNamedItem() 공개 메소드

NamedNodeMap(대부분 XmlAttributeCollection)에서 해당 node를 삭제한다.
public RemoveNamedItem ( XmlNamedNodeMap nodeMap, string nodeName ) : XmlNode
nodeMap System.Xml.XmlNamedNodeMap
nodeName string
리턴 System.Xml.XmlNode

RemoveSelection() 공개 메소드

xpath로 찾은 모든 XmlNode를 삭제한다.
public RemoveSelection ( string xpath ) : int
xpath string
리턴 int

SaveFileElement() 공개 메소드

File 정보를 담고 있는 XmlElement를 filename으로 저장한다.
public SaveFileElement ( XmlElement fileNode, string filename ) : string
fileNode System.Xml.XmlElement
filename string
리턴 string

SaveFileElement() 공개 메소드

File 정보를 담고 있는 XmlElement를 filename으로 저장한다.
public SaveFileElement ( XmlElement fileNode, string filename, bool overwrite ) : string
fileNode System.Xml.XmlElement 파일 Stream 을 가지고 있는 Node
filename string 저장할 파일 이름
overwrite bool 겹쳐쓰기 여부
리턴 string

SaveToFile() 공개 메소드

Xml 내용을 파일로 저장한다.
public SaveToFile ( string filename ) : void
filename string 전체 경로 명
리턴 void

SaveToTemp() 공개 메소드

Xml 내용을 System Temporary Directory에 저장한다.
public SaveToTemp ( string filename ) : void
filename string 저장할 파일명 (전체 경로가 아닌 파일명만 적는다.)
리턴 void

SetElementText() 공개 메소드

xpath로 찾은 Element의 InnerText값을 지정한다.
해당 Element를 찾지 못했을 때
public SetElementText ( string xpath, string text ) : void
xpath string XPath
text string 탐색한 XmlElement에 설정할 Text값
리턴 void

SetNamedItem() 공개 메소드

XmlNamedNodeMap에 Node를 추가한다.
public SetNamedItem ( XmlNamedNodeMap nodeMap, XmlNode node ) : XmlNode
nodeMap System.Xml.XmlNamedNodeMap
node System.Xml.XmlNode
리턴 System.Xml.XmlNode

SetNamedItem() 공개 메소드

XmlNamedNodeMap에 Node를 추가한다.
public SetNamedItem ( XmlNamedNodeMap nodeMap, string name, string value ) : XmlNode
nodeMap System.Xml.XmlNamedNodeMap
name string
value string
리턴 System.Xml.XmlNode

XmlDoc() 공개 메소드

기본 생성자
public XmlDoc ( ) : System
리턴 System

XmlDoc() 공개 메소드

stream 정보를 읽어서 XmlDocument 인스턴스를 생성한다.
public XmlDoc ( Stream stream ) : System
stream Stream 원본 Stream 객체
리턴 System

XmlDoc() 공개 메소드

생성자 ( System.Uri 개체의 AbsoluteUri 속성을 통해 XmlDocument를 생성합니다.
public XmlDoc ( Uri uri ) : System
uri System.Uri System.Uri개체
리턴 System

XmlDoc() 공개 메소드

생성자 - document을 읽어서 새로운 XmlDocument 인스턴스를 생성한다.
public XmlDoc ( XmlDocument document ) : System
document System.Xml.XmlDocument 원본 XmlDocument
리턴 System

XmlDoc() 공개 메소드

주어진 xml 문자열이 순수 XML string이거나 URI 이거나 모두 load하여 XmlDocument를 구성한다.
public XmlDoc ( string xmlText ) : System
xmlText string xml text이거나 xml 파일경로, URI 등이 된다.
리턴 System