Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 读取路径中的文件名并写入JSON文件_C# - Fatal编程技术网

C# 读取路径中的文件名并写入JSON文件

C# 读取路径中的文件名并写入JSON文件,c#,C#,我在C:Data\like中有一个文件目录 如何在名为Offline.JSON的现有JSON文件上编写类似以下内容: { "GDB":[ "C:Data/GDB/GDB1.gdb", "C:Data/GDB/GDB2.gdb", "C:Data/GDB/GDB3.gdb" ], "TPK":[ "C:Data/TPK/TPK1.gdb", "C:Data/TPK/TPK2.gdb" ], "MPK":[ "C:Dat

我在C:Data\like中有一个文件目录

如何在名为Offline.JSON的现有JSON文件上编写类似以下内容:

{
"GDB":[ "C:Data/GDB/GDB1.gdb",
        "C:Data/GDB/GDB2.gdb", 
        "C:Data/GDB/GDB3.gdb" 
       ],
"TPK":[ "C:Data/TPK/TPK1.gdb",
        "C:Data/TPK/TPK2.gdb"
       ],
"MPK":[ "C:Data/MPK/MPK1.mpk",
        "C:Data/MPK/MPK2.mpk", 
        "C:Data/MPK/MPK3.mpk",
        "C:Data/MPK/MPK4.mpk",
        "C:Data/MPK/MPK5.mpk", 
        "C:Data/MPK/MPK6.mpk" 
       ]
}
在加载WPF主窗口时?

使用此功能很容易完成:

// Your main code...
String path = @"C:\Data\";
DirectoryInfo di = new DirectoryInfo(path);
String json = GetJsonDirectoryStructure(di).ToString();

// Method implementation...
public static JObject GetJsonDirectoryStructure(DirectoryInfo di)
{
    JObject jObj = new JObject();

    foreach (DirectoryInfo diChild in di.GetDirectories())
        jObj.Add(diChild.Name, GetJsonDirectoryStructure(diChild));

    foreach (FileInfo di in di.GetFiles())
        jObj.Add(fi.Name, JValue.CreateNull());

    return jObj;
}