728x90
반응형
XML 파일을 읽고 쓰는데는 XmlDocument 를 사용한다.
TreeControl 처럼 Node를 추가하고 그 Node 아래 자식 Node를 추가하는 방식을 사용하는데
어떤 정보를 담아두고, 해당 정보를 불러와 이용할 때 유용하다.
1. Using 추가
using System.Xml;
2. XML 파일 쓰기
XmlDocument를 선언 후
XmlNode에 를 선언하여 AppendChild 해주고 있다.
private void button1_Click(object sender, EventArgs e)
{
XmlDocument xdoc = new XmlDocument();
//커피 타입이라는 부모 노드 생성
XmlNode root = xdoc.CreateElement("CoffeeType");
xdoc.AppendChild(root);
//자식 노드 1. 아메리카노 , 가격은 4000원
XmlNode coff1 = xdoc.CreateElement("Coffee");
XmlNode type1 = xdoc.CreateElement("Type");
type1.InnerText = "Americano";
coff1.AppendChild(type1);
XmlNode price1 = xdoc.CreateElement("Price");
price1.InnerText = "4000";
coff1.AppendChild(price1);
//자식 노드 2. 라떼 , 가격은 5000원
XmlNode coff2 = xdoc.CreateElement("Coffee");
XmlNode type2 = xdoc.CreateElement("Type");
type2.InnerText = "Latte";
coff2.AppendChild(type2);
XmlNode price2 = xdoc.CreateElement("Price");
price2.InnerText = "5000";
coff2.AppendChild(price2);
//부모 노드에 자식 노드 추가
root.AppendChild(coff1);
root.AppendChild(coff2);
xdoc.Save(@"C:\Temp\xmltest.xml");
}
xmltest.xml 파일이다
3. XML 파일 읽기
읽는 건 간단하다 FOREACH 문으로 NODE를 읽어주면 된다.
private void button2_Click(object sender, EventArgs e)
{
XmlDocument xdoc = new XmlDocument();
xdoc.Load(@"C:\Temp\xmltest.xml");
XmlNodeList nodes = xdoc.SelectNodes("/CoffeeType/Coffee");
foreach(XmlNode coffee in nodes)
{
string type = coffee.SelectSingleNode("Type").InnerText;
string price = coffee.SelectSingleNode("Price").InnerText;
richTextBox1.AppendText("Type : " + type + " Price : " + price+ "\n");
}
}
728x90
반응형
'c# > 기타' 카테고리의 다른 글
[c#] 두 개의 List 같은지 비교 (0) | 2022.05.20 |
---|---|
[c#] winform 윈폼 열린폼은 맨위로 , 중복 방지 open form (0) | 2022.05.02 |
[c#] 시간 측정 stopwatch (0) | 2022.03.18 |
[c#] List<string> 특정 단어가 들어가면 삭제 (0) | 2022.01.21 |
[c#] File Copy, Delete, Move (0) | 2022.01.21 |