读取文件夹中所有文件并转为json格式描述

本文介绍了一个使用C#语言编写的程序,该程序能够遍历指定目录及其子目录中的所有文件和文件夹,并将相关信息以JSON格式返回。通过递归调用,程序收集每个文件和文件夹的名称、类型及完整路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

private StringBuilder sb = new StringBuilder();
private string GetAll(DirectoryInfo dir)//搜索文件夹中的文件
{
FileInfo[] allFile = dir.GetFiles();
DirectoryInfo[] allDir = dir.GetDirectories();
for (int i = 0; i < allFile.Length; i++)
{
sb = sb.Append("{");
sb = sb.Append("\"fileName\":\"" + allFile[i].Name + "\",");
sb = sb.Append("\"fileType\":\"文件\",");
sb = sb.Append("\"filePath\":\"" + @allFile[i].FullName.ToString().Replace("\\", "\\\\").ToString() + "\"");
sb = sb.Append("}");
if (allDir.Length != 0)
{
sb = sb.Append(",");
}
else
{
if (i != allFile.Length - 1)
{
sb = sb.Append(",");
}
}
}

for (int i = 0; i < allDir.Length; i++)
{
sb = sb.Append("{");
sb = sb.Append("\"fileName\":\"" + allDir[i].Name + "\",");
sb = sb.Append("\"fileType\":\"目录\",");
sb = sb.Append("\"filePath\":\"" + @allDir[i].FullName.ToString().Replace("\\","\\\\").ToString() + "\",");
sb = sb.Append("\"zixiang\":" + "[");
GetAll(allDir[i]);
sb = sb.Append("]");
sb = sb.Append("}");

if (i != allDir.Length - 1)
{
sb = sb.Append(",");
}
}
return sb.ToString();
}
public string getDirectoryJson(DirectoryInfo dir)
{
return "[" + GetAll(dir) + "]";
}
Class1 File = new Class1();
string dd=File.getDirectoryJson(new DirectoryInfo("E:\\Files_LianYiRong\\Loans\\YYDC-LJBL-2018-111141\\"));

 

### 批量将JSON文件转换为TXT文件 对于批量处理不同类型的文件,Python 提供了强大的工具来实现这一目标。针对 JSON 文件转 TXT 的需求,可以采用如下方法: #### 方法概述 通过 Python 脚本遍历指定路径下的所有 `.json` 文件逐个将其内容读取出来再写入到对应的 `.txt` 文件中。 #### 实现代码 下面是一个完整的 Python 代码示例用于完成此操作: ```python import json import os def convert_json_to_txt(json_file, txt_file): """Convert a single .json file to .txt.""" try: with open(json_file, 'r', encoding='utf-8') as f_in: data = json.load(f_in) with open(txt_file, 'w', encoding='utf-8') as f_out: # Write the content of JSON object line by line into text file. if isinstance(data, list): for item in data: f_out.write(str(item) + "\n") elif isinstance(data, dict): for key, value in data.items(): f_out.write(f"{key}: {value}\n") except Exception as e: print(f"Error processing {json_file}: {e}") input_folder = "path/to/json/files" output_folder = "path/to/output/txt" if not os.path.exists(output_folder): os.makedirs(output_folder) for filename in os.listdir(input_folder): if filename.endswith(".json"): input_file = os.path.join(input_folder, filename) output_file = os.path.splitext(filename)[0] + ".txt" output_path = os.path.join(output_folder, output_file) convert_json_to_txt(input_file, output_path) ``` 上述脚本定义了一个函数 `convert_json_to_txt()` 来处理单个 JSON 文件至 TXT 文件的转换过程[^1]。该程序会检查输入文件夹中的每一个文件;如果它是以 `.json` 结尾,则调用这个函数进行转换将结果保存在一个新的同名但带有 `.txt` 后缀的新文件里[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值