版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_17255515/article/details/81098243
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using Newtonsoft.Json;
namespace ConsoleApplication1
{
class Program
{
private static List<Dictionary<string, object>> list = new List<Dictionary<string, object>>();
static void Main(string[] args)
{
var path = @"F:\BaiduNetdiskDownload\jquery-easyui-EDT-1.5.1-build1\jquery-easyui-1.5.1\demo(网页端示例)";
GetDir(path);
var dd = Newtonsoft.Json.JsonConvert.SerializeObject(list);
}
public static void GetDir(string path)
{
DirectoryInfo folder = new DirectoryInfo(path);
DirectoryInfo[]dirs= folder.GetDirectories();
foreach (var item in dirs)
{
var d = new Dictionary<string, object>();
d.Add("id",Guid.NewGuid().ToString());
d.Add("text",item.Name);
d.Add("state", "closed");
if (GetFileNames(item.FullName).Count > 0)
{
var f = new List<Dictionary<string, object>>();
int cc = 11;
foreach (var c in GetFileNames(item.FullName))
{
cc++;
f.Add(new Dictionary<string, object>() { { "id", Guid.NewGuid().ToString() }, { "text", c }, { "url", item+"/"+c } });
}
d.Add("children", f);
}
list.Add(d);
}
}
public static List<string> GetFileNames(string path)
{
DirectoryInfo folder = new DirectoryInfo(path);
List<string> files = new List<string>();
foreach (FileInfo file in folder.GetFiles("*.html"))
{
if (file.Name.Contains("_"))
{
continue;
}
files.Add(file.Name);
}
return files;
}
}
public class TreeViewNode
{
public int id { get; set; }
public string name { get; set; }
public string url { get; set; }
public TreeViewNode children { get; set; }
}
}