XmlTextWriter 클래스를 이용한 XML파일 생성방법

Category:
Author: zemna
Date: April 17, 2021
Share this:

.NET Framework에서는 XML을 쉽게 기록할 수 있도록 XmlTextWriter  클래스를 제공하고 있다. 이 XmlTextWriter 클래스는 속도가 빠르고, 캐시되지 않으며, 앞으로만 이동 가능한 방법을 제공한다.

아래는 XmlTextWriter 클래스를 사용한 예제이다.

XmlTextWriter 사용 예제

[code lang="csharp"] void IDataProcessor.SaveList(List programList, string filePath) { XmlTextWriter writer = new XmlTextWriter(filePath, null);

// 자식요소에 따라 들여쓰기하기 writer.Formatting = Formatting.Indented;

writer.WriteStartDocument();

writer.WriteComment("This file stores application version list");

// writer.WriteStartElement("Programs");

for (int i = 0; i < programList.Count; i++) { // writer.WriteStartElement("Program");

// writer.WriteElementString("ID", programList[i].ID);

// writer.WriteElementString("Name", programList[i].Name);

// writer.WriteElementString("Contents", programList[i].Contents);

// writer.WriteElementString("RegistrationDate", programList[i].RegistrationDate.ToString());

// writer.WriteStartElement("Versions");

for (int j = 0; j < programList[i].Versions.Count; j++) { // writer.WriteStartElement("Version");

// writer.WriteElementString("VersionNo", programList[i].Versions[j].VersionNo);

// writer.WriteElementString("RegistrationDate", programList[i].Versions[j].RegistrationDate.ToString());

// writer.WriteElementString("EditDate", programList[i].Versions[j].EditDate.ToString());

// writer.WriteElementString("FolderPath", programList[i].Versions[j].FolderPath);

// writer.WriteStartElement("Files");

for (int k=0; k writer.WriteElementString("File", programList[i].Versions[j].FileList[k]); }

// writer.WriteEndElement();

// writer.WriteEndElement(); }

// writer.WriteEndElement();

// writer.WriteEndElement(); }

// writer.WriteEndElement();

writer.Flush(); writer.Close(); } [/code]

위의 형식대로 파일을 기록하게 되면 아래와 같은 구조의 XML 파일이 생성되게 된다.

생성된 XML 파일

[code lang="xml"] ZemnaAutoUpdater Zemna Auto Updater 하하하하하 2009-02-27 오전 11:28:02 1.0.0 2009-02-27 오전 11:28:02 2009-02-27 오전 11:28:02 cadfasd 123.tx [/code]

Share this:

Leave a Reply

Your email address will not be published. Required fields are marked *

Let's connect and create
something awesome together!
2023 - Copyright, All Rights Reserved, Made by ZEMNA.NET with ❤️
crossmenu linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram