การจัดการ XML อย่างง่าย

Posted by on March 11, 2015

หลังจากไม่ได้เขียนบทความมานาน เพราะงานค่อนข้างเยอะ วันนี้พอมีเวลา และจำเป็นต้องศึกษา XML เพื่อนำมาใช้ในงาน จึงค้นหาโค๊ดที่จะทำให้จำได้ง่ายๆมา หลังจากศึกษาแล้ว ก็ได้ตัวอย่างโค๊ตตามข้างล่างนี้

// Create XML

XmlDocument xmlDoc = new XmlDocument();
XmlNode rootNode = xmlDoc.CreateElement(“persons”);
xmlDoc.AppendChild(rootNode);

XmlNode personNode = xmlDoc.CreateElement(“person”);
XmlAttribute attribute = xmlDoc.CreateAttribute(“age”);
attribute.Value = “32”;
personNode.Attributes.Append(attribute);
personNode.InnerText = “Nakorn Rientrakrunchai”;
rootNode.AppendChild(personNode);

personNode = xmlDoc.CreateElement(“person”);
attribute = xmlDoc.CreateAttribute(“age”);
attribute.Value = “26”;
personNode.Attributes.Append(attribute);
personNode.InnerText = “Natee Rientrakrunchai”;
rootNode.AppendChild(personNode);

personNode = xmlDoc.CreateElement(“person”);
attribute = xmlDoc.CreateAttribute(“age”);
attribute.Value = “31”;
personNode.Attributes.Append(attribute);
personNode.InnerText = “Pongkan”;
rootNode.AppendChild(personNode);

ASPxMemo1.Text = xmlDoc.InnerXml;

// Read XML

XmlDocument xmlDocRead = new XmlDocument();
xmlDocRead.LoadXml(ASPxMemo1.Text);

XmlNodeList personNodes = xmlDocRead.SelectNodes(“//persons/person”);
//XmlNodeList peopleNodes = xmlDocRead.GetElementsByTagName(“person”);

foreach (XmlNode personNodeX in personNodes)
{
ASPxMemo2.Text += “Name = “+personNodeX.InnerText+” Age = ”
+ personNodeX.Attributes["age"].Value+@”
“;

}
ตัวอย่างโค๊ดข้างต้น จะเป็นการเขียนโปรแกรมเพื่อสร้าง และบันทึก XML ไฟล์ด้วย C# ซึ่งผมว่า เข้าใจได้ง่าย และสามารถนำไปประยุกต์ได้ โปรแกรมข้างต้น เมื่อรันออกมา จะได้ผลตามข้างล่างนี้

การเขียนโปรแกรมxml

ตัวอย่างข้างต้นนี้ ผมก็นำมาใช้เป็นต้นแบบ การเขียนโปรแกรม เช่นกันครับ หวังว่าคงมีประโยชน์ต่อทุกท่าน ไม่มากก็น้อยครับ