2011-02-23 3 views
3

기존 XML 파일을 열고 편집하려면 어떻게해야합니까? 일부 값을 수정하고 싶습니다.C#을 사용하여 XML 파일을 읽고 편집하려면 어떻게해야합니까?

<address>myaddr</address> 

예를 들어, myaddr 대신 loreal을 입력하고 싶습니다. 나는 C#에서 일하고있다. 나에게 몇 가지 코드를 보여 주시면 고맙겠습니다. 그리고 아주 쉽게, 너무 -

var doc = XDocument.Load("test.xml"); 
var address = doc.Root.Element("address"); 
if (address != null) 
{ 
    address.Value = "new value"; 
} 
doc.Save("test.xml"); 

답변

6

당신은 XDocument 클래스를 사용할 수 있습니다.

읽기 이러한 자원 :

더 많은 - 그냥 "소개 Linq에 - 투 - XML"또는 "소개 XMLDocument로"를 검색 - 당신은 많음의 좋은 기사 및 블로그 포스트에 연결을 얻을 것이다.

+0

Thx 많이 !! xml 파일의 경로가 동적 인 경우 프로그램에서이 작업을 수행 할 수 있습니까? – hello

+0

@hello, * dynamical *은 무엇을 의미합니까? 변수를 사용할 수 없습니까? –

+0

나는 c : \ desktop \ xml이라는 루트를주고 싶지 않다. – hello

1

네, 완전히 가능 :

1

의 당신이 다음과 같은 XML 파일이 있다고 가정 해 봅시다 :

<root> 
    <address>myaddr</address> 
</root> 

그리고 당신은 교체를해야합니다. 많은 옵션이 있습니다. 일부는 명시 적으로 XML을 수정하고 있으며, 다른 일부는 XML을 클래스로 변환하고 XML을 수정 및 변환 (직렬화)합니다. - http://msdn.microsoft.com/en-us/library/bb387098.aspx

  • XML 직렬화는 XML에

    1. LINQ 내가 여기에 사용되는 기술이다 :

      자세한 내용은
      XDocument doc = XDocument.Load("myfile.xml"); 
      doc.Root.Element("address").Value = "new address" 
      doc.Save("myfile.xml") 
      

      다음 읽기 : 여기에 방법 중 하나는해야합니까이다 다른 기술 - http://msdn.microsoft.com/en-us/library/182eeyhh.aspx

  • +0

    오류가 있습니다. NullReferenceException입니다. 개체 참조가 개체의 인스턴스로 설정되지 않았습니다. 왜? – hello

    +0

    것은 이것과 같은 것을 가지고있다.

    myaddr
    . 그리고 나서 ... 그리고 같은 것 – hello

    관련 문제