要统计文件夹A下每个子文件夹的大小,你可以使用递归方法来实现。具体步骤如下:
- 遍历文件夹A下的所有子文件夹。
- 对于每个子文件夹,统计其直接包含的文件的大小。
- 如果子文件夹还包含其他子文件夹,则递归地对每个子文件夹执行相同的操作,直到遍历完所有子文件夹。
- 将每个子文件夹的大小进行累加,得到文件夹A下每个子文件夹的总大小。
具体的实现可以根据你使用的编程语言不同而有所不同。以下是一个Python的示例代码:
import os def get_folder_size(folder_path): total_size = 0 # 遍历文件夹下所有文件和子文件夹 for root, dirs, files in os.walk(folder_path): # 计算当前文件夹下所有文件的大小 for file in files: file_path = os.path.join(root, file) total_size += os.path.getsize(file_path) return total_size / (1024 * 1024) # 将结果转换为 MB def get_subfolders_sizes(parent_folder): subfolder_sizes = {} # 获取父文件夹下所有子文件夹 subfolders = [f for f in os.listdir(parent_folder) if os.path.isdir(os.path.join(parent_folder, f))] # 遍历每个子文件夹并计算大小 for subfolder in subfolders: subfolder_path = os.path.join(parent_folder, subfolder) subfolder_sizes[subfolder] = get_folder_size(subfolder_path) return subfolder_sizes # 保存结果到文本文件 def save_to_txt(file_path, subfolders_sizes): with open(file_path, 'w') as file: for subfolder, size in subfolders_sizes.items(): file.write(f"Subfolder {subfolder} size: {size:.2f} MB\n") # 用法示例 folderA_path = '/path/to/folder/A' subfolders_sizes = get_subfolders_sizes(folderA_path) txt_file_path = '/path/to/output.txt' save_to_txt(txt_file_path, subfolders_sizes)