사용자가 스프레드 시트를 가져 와서 XML 형식으로 만들 수있는 시스템이 있습니다. 이 스프레드 시트는 동적입니다.C# XML Reader 어떻게 다음 요소로 이동했는지 알 수 있습니까?
스프레드 시트의 각 행은 XML의 요소입니다.
예를 들어이 스프레드 시트 3 등 행 :
<DocumentElement>
<Person>
<Title />
<FirstName>Tom</FirstName>
<Surname>Smith</Surname>
<eMail>[email protected]</eMail>
<PostCode>AA11 2BB</PostCode>
<Company></Company>
<TelephoneNumber>01111111111</TelephoneNumber>
<AddressLine1 />
<AddressLine2 />
<AddressLine3 />
</Person>
<Person>
<Title />
<FirstName>Simon</FirstName>
<Surname>Long</Surname>
<eMail>[email protected]</eMail>
<PostCode>AA11 2BB</PostCode>
<Company></Company>
<TelephoneNumber>01111111111</TelephoneNumber>
<AddressLine1 />
<AddressLine2 />
<AddressLine3 />
</Person>
<Person>
<Title />
<FirstName>Paul</FirstName>
<Surname>Boon</Surname>
<eMail>[email protected]</eMail>
<PostCode>AA11 2BB</PostCode>
<Company></Company>
<TelephoneNumber>01111111111</TelephoneNumber>
<AddressLine1 />
<AddressLine2 />
<AddressLine3 />
</Person>
</DocumentElement>
다음 사람 클래스로 만들어 도착 이러한 행의 각. 그러나 XMLReader가 XML의 다음 요소로 이동 한 시점을 알아야하므로 다음 행에 대해 새 클래스를 만들 수 있습니다. 는 XML 리더에 대한 경우
그래서, 어떻게 내가 말할 수있는 톰 스미스 Person 클래스, 사이먼 롱 Person 클래스와 폴 도서 Person 클래스 : 나는 대한 사람 클래스가 있어야 너무
는 종료합니다 다음 요소로 이동하여 새로운 수업을 만들 수 있습니까?
nextsibling은 단순히이 노드 바로 다음 노드를 가져 오지 않습니까? xmlread가 현재 노드 처리를 마쳤다는 것을 어떻게 알 수 있습니까? – user2183216
@ user2183216이 경우에는 관련이 없습니다.'XmlDocument'는'Load' 중에 내부적으로'XmlReader'를 생성하고, 읽고, 처리했습니다. 이제 모든 XML이 메모리의 DOM에 있습니다. 옆으로, 당신이 DOM 경로를 가려고한다면 LINQ to XML이'XmlDocument'보다 바람직합니다. –