我正在处理一个项目,我需要将treeview转换为xml,以便我可以将该xml数据发送到另一个端口。如何将treeview转换为xml?
回答
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;
}
应该更改为(treeViewNode.GetNodeCount(true)== 0) – mcuw
@mcuw:不正确。如果(treeViewNode.GetNodeCount(true)== 0),那么treeViewNode.Nodes [0] = null。因此,element.Value = treeViewNode.Nodes [0] .Name会导致崩溃。 – JSON
当我使用已经有根注释的XML填充我的树形视图(所以我的树形视图以root开头),此代码每次导出时都会添加另一个根。是否有某种方法可以跳过树视图中的特定节点(而不是其子节点)或跳过导出的根创建? – Dante1986
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. 如何将SVG xml转换为BPMN2.0 xml
- 2. 如何将xml源转换为html
- 3. 如何将Python对象转换为XML?
- 4. 如何将字符串转换为xml
- 5. 如何将XML数据转换为data.frame?
- 6. 如何将XML数据转换为NSMutableArray
- 7. 如何将C#数组转换为XML
- 8. 如何将XML转换为JSON?
- 9. 如何将JSON字典转换为XML?
- 10. 如何将datatable转换为xml?
- 11. 如何将PDF转换为XML
- 12. 如何将.txt转换为XML
- 13. 如何将xls文件转换为xml?
- 14. c#如何将csv转换为xml
- 15. 如何将xml转换为sqlite
- 16. 如何将XML数据转换为gridview
- 17. 如何将xml文件转换为mysql?
- 18. 如何将此XML转换为KML?
- 19. 如何将地图转换为XML
- 20. 如何将XML文件转换为DataSource?
- 21. 如何将xml转换为KSOAP请求?
- 22. Actionscript 3 - 如何将XMLList转换为XML?
- 23. Kxml2如何将xml转换为wbxml?
- 24. 如何将dom4j xml转换为Swing Jtree?
- 25. 如何将XML转换为词典
- 26. 如何将XML文件转换为ArrayList
- 27. 如何将这个XML转换为CSV
- 28. 将WPF TreeView转换为菜单
- 29. 将XML转换为XML,将属性转换为元素
- 30. 将XML转换,转换为属性
Windows窗体,WPF,ASP.NET,...? –
你已经试过了什么代码? –
Windows窗体...我很新...所以我只做了研究,我找不到任何代码 – james