树视图节点导出到 excel
Treeview nodes export to excel
我有一个包含多个节点的树视图,如何将包含所有子节点的树视图导出到 excel。到目前为止的进展是下面的代码。
using (StreamWriter sw = new StreamWriter(Environment.CurrentDirectory + @"treeview2.csv"))
foreach (TreeNode node in treeView2.Nodes)
{
sw.WriteLine(node);
}
`
我希望我的输出是这样的这是来自网上的图片
Output click here
此示例使用 EPPlus nuget package 创建 excel 文件。如果您不想使用此包,可以使用 Excel Interop 作为替代方案。
ExcelPackage excel = new ExcelPackage();
var worksheet = excel.Workbook.Worksheets.Add("TreeView Export");
int rowCounter = 0;
RecurseNodes(treeView1.Nodes, 1);
void RecurseNodes(TreeNodeCollection currentNode, int col)
{
foreach (TreeNode node in currentNode)
{
rowCounter = rowCounter + 1;
worksheet.Cells[rowCounter, col].Value = node.Text;
if (node.FirstNode != null)
RecurseNodes(node.Nodes, col + 1);
}
}
excel.SaveAs(new FileInfo(@"C:\ProgramData\export.xlsx"));
如果需要,很乐意提供进一步的解释。
我有一个包含多个节点的树视图,如何将包含所有子节点的树视图导出到 excel。到目前为止的进展是下面的代码。
using (StreamWriter sw = new StreamWriter(Environment.CurrentDirectory + @"treeview2.csv"))
foreach (TreeNode node in treeView2.Nodes)
{
sw.WriteLine(node);
}
`
我希望我的输出是这样的这是来自网上的图片
Output click here
此示例使用 EPPlus nuget package 创建 excel 文件。如果您不想使用此包,可以使用 Excel Interop 作为替代方案。
ExcelPackage excel = new ExcelPackage();
var worksheet = excel.Workbook.Worksheets.Add("TreeView Export");
int rowCounter = 0;
RecurseNodes(treeView1.Nodes, 1);
void RecurseNodes(TreeNodeCollection currentNode, int col)
{
foreach (TreeNode node in currentNode)
{
rowCounter = rowCounter + 1;
worksheet.Cells[rowCounter, col].Value = node.Text;
if (node.FirstNode != null)
RecurseNodes(node.Nodes, col + 1);
}
}
excel.SaveAs(new FileInfo(@"C:\ProgramData\export.xlsx"));
如果需要,很乐意提供进一步的解释。