How to convert a tree to xml?

I am working on a project currently and I need to convert treeview to xml so that I can send this xml data to a different port.

+3
c # xml
source share
2 answers
private void button1_Click(object sender, EventArgs e) { var rootElement = new XElement("root", CreateXmlElement(treeView1.Nodes)); var document = new XDocument(rootElement); document.Save("C:\\1.xml"); } private static List<XElement> CreateXmlElement(TreeNodeCollection treeViewNodes) { var elements = new List<XElement>(); foreach (TreeNode treeViewNode in treeViewNodes) { var element = new XElement(treeViewNode.Name); if (treeViewNode.GetNodeCount(true) == 1) element.Value = treeViewNode.Nodes[0].Name; else element.Add(CreateXmlElement(treeViewNode.Nodes)); elements.Add(element); } return elements; } 
+5
source share
  Here is the code snippet : public void exportToXml(TreeView tv, string filename) { sr = new StreamWriter(filename, false, System.Text.Encoding.UTF8); sr.WriteLine("<" + tv.Nodes[0].Text + ">"); foreach (TreeNode node in tv.Nodes) { saveNode(node.Nodes); } //Close the root node sr.WriteLine("</" + tv.Nodes[0].Text + ">"); sr.Close(); } private void saveNode(TreeNodeCollection tnc) { foreach (TreeNode node in tnc) { if (node.Nodes.Count > 0) { sr.Write("<" + node.Text + ">"); saveNode(node.Nodes); sr.WriteLine("</" + node.Text + ">"); } else sr.Write(node.Text); } } 
+1
source share

All Articles