2011-02-14 4 views
2
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
<eRecon xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:noNamespaceSchemaLocation="eRecon.xsd"> 
<Header> 
    <Company Code="" /> 
    <CommonCarrierCode /> 
    <InputFileName InputIDPk="">F:\ReconNew\TmesysRec20100111.rec</InputFileName> 
    <BatchNumber>000152</BatchNumber> 
    <InputStartDateTime>2010-02-26 11:47:00</InputStartDateTime> 
    <InputFinishDateTime>2010-02-26 11:47:05</InputFinishDateTime> 
    <RecordCount>8</RecordCount> 
    </Header> 
<Detail> 
    <CarrierStatusDate>2010-01-11</CarrierStatusDate> 
    <ClaimNum>YDF02892 C</ClaimNum> 
    <InvoiceNum>0108013775</InvoiceNum> 
    <LineItemNum>001</LineItemNum> 
    <NABP>10600211</NABP> 
    <RxNumber>4695045</RxNumber> 
    <RxDate>2008-07-21</RxDate> 
    <CheckNum /> 
    <PaymentStatus>PENDING</PaymentStatus> 
    <RejectDescription /> 
    <InvoiceChargeAmount>152.15</InvoiceChargeAmount> 
    <InvoicePaidAmount>131.00</InvoicePaidAmount> 
</Detail> 
</eRecon> 

를 사용하는 XML 파일의 XML 코드의 일부를 추출하는 방법은 어떻게 상기 XML 파일의 부분C# 코드

<Header> 
    <Company Code="" /> 
    <CommonCarrierCode /> 
    <InputFileName InputIDPk="">F:\ReconNew\TmesysRec20100111.rec</InputFileName> 
    <BatchNumber>000152</BatchNumber> 
    <InputStartDateTime>2010-02-26 11:47:00</InputStartDateTime> 
    <InputFinishDateTime>2010-02-26 11:47:05</InputFinishDateTime> 
    <RecordCount>8</RecordCount> 
</Header> 

를 추출 할 수있다.

xml 파일에서 xml 태그의 일부를 추출하려면 C# 코드가 필요합니다.

+0

뿐만 아니라 헤더 part.Any의 XML 부분을 ​​추출해야합니다. – user578104

답변

4

을 파일 (몇 MB보다 작은) 너무 큰 수없는 경우, 당신은 XmlDocument에로드 할 수 있습니다

XmlDocument doc = new XmlDocument(); 
doc.Load(@"C:\yourfile.xml"); 

다음은 XPath 식 사용하여 <Header> 요소에 대해 분석 할 수 있습니다

XmlNode headerNode = doc.SelectSingleNode("/eRecon/Header"); 
if(headerNode != null) 
{ 
    string headerNodeXml = headerNode.OuterXml; 
} 
을3210
+0

답장을 보내 주셔서 감사합니다. – user578104

+0

헤더 부분뿐만 아니라 주어진 xml 파일에서 xml 태그의 일부를 추출하는 코드가 필요합니다. 모든 xml 부분을 추출해야합니다. 예를 들어 머리글 부분을 추출하는 것으로 나타났습니다. 제발 도와주세요. – user578104

+0

@ user578104 : 다른 섹션을 추출해야하는 경우 XPath 표현식을 적용하면됩니다. '/ eRecon/Header' 문자열은 추출 할 내용을 정의합니다. 다른 것을 필요로한다면 이것을 적용하십시오. XPath 알아보기! –

0

사용 Linq에 - 투 - XML ​​:

XDocument xmlDoc = XDocument.Load(@"c:\sample.xml"); 
var header = xmlDoc.Descendants("Header").FirstOrDefault(); 
+0

xml 태그의 일부를 추출하는 코드가 필요합니다. 주어진 xml 파일에서 헤더 부분뿐만 아니라 모든 xml 부분을 추출해야합니다. 헤더 부분을 예제로 보여주었습니다. 제발 도와주세요. – user578104

+0

답장을 보내 주셔서 감사합니다 – user578104

0

의 LINQ 버전 I 지정된 XML 파일에서 XML 태그의 일부를 추출하는 코드가 필요

string [email protected]"d:\xml.xml"; 
var descendants = from i in XDocument.Load(fileName).Descendants("Header") 
select i; 
+0

주어진 xml 파일에서 xml 태그의 일부를 추출하는 코드가 필요합니다. 헤더 부분 만이 아니라 일부 XML 부분도 추출해야합니다. 예를 들어 머리글 부분을 추출했습니다. 도움을 청하십시오. 나를. – user578104

+0

답장을 보내 주셔서 감사합니다. – user578104