XML 파일을 문자열로 생성하고 읽어 들이는 방법입니다.
/// <summary> /// XML 생성 /// </summary> private void CreateXML() { // 생성할 XML 파일 경로와 이름, 인코딩 방식을 설정합니다. XmlTextWriter textWriter = new XmlTextWriter(@"C:\example.xml", Encoding.UTF8);
// 들여쓰기 설정 textWriter.Formatting = Formatting.Indented;
// 문서에 쓰기를 시작합니다. textWriter.WriteStartDocument();
// 루트 설정 textWriter.WriteStartElement("root");
// 노드와 값 설정 textWriter.WriteStartElement("root_a"); textWriter.WriteString("a"); textWriter.WriteEndElement();
// 노드 안에 하위 노드 설정 textWriter.WriteStartElement("root_b");
textWriter.WriteStartElement("b"); textWriter.WriteString("b"); textWriter.WriteEndElement();
textWriter.WriteStartElement("bb"); textWriter.WriteString("bb"); textWriter.WriteEndElement();
textWriter.WriteEndElement();
textWriter.WriteStartElement("root_c"); textWriter.WriteString("1"); textWriter.WriteEndElement();
textWriter.WriteEndElement();
textWriter.WriteEndDocument(); textWriter.Close(); }
/// <summary> /// XML 파일 읽기 /// </summary> private void ReadXML() { try { XmlDocument xmldoc = new XmlDocument(); xmldoc.Load(@"C:\example.xml"); XmlElement root = xmldoc.DocumentElement;
// 노드 요소들 XmlNodeList nodes = root.ChildNodes;
// 노드 요소의 값을 읽어 옵니다. foreach (XmlNode node in nodes) { switch (node.Name) { case "root_a": string a = node.InnerText; break;
case "root_b": string b = node["b"].InnerText; string bb = node["bb"].InnerText; break;
case "root_c": int c = int.Parse(node.InnerText); break; } } } catch (IOException ex) { Console.WriteLine(ex.ToString()); } } |
'Languages > C#' 카테고리의 다른 글
[ C# ] C# FTP Download (3) | 2010.07.21 |
---|---|
[ C# ] Default Sound Device 변경하기 (0) | 2010.07.19 |
[ C# ] Network 연결 확인 (0) | 2010.05.21 |
소수점 자릿수 출력하기 (0) | 2009.04.11 |
c#으로 툴바 만들기 (2) | 2009.03.30 |