| 
 | 
 
 
发表于 2023-6-27 17:48:23
|
显示全部楼层
   本楼为最佳答案    
 
 
要将一个文件夹中的所有txt文件从UTF-8转换为ANSI编码,你可以使用Python的`codecs`模块来实现。下面是一个示例代码,可以帮助你完成这个任务: 
 
- import os
 
 - import codecs
 
  
- def convert_files_to_ansi(folder_path):
 
 -     for root, dirs, files in os.walk(folder_path):
 
 -         for file in files:
 
 -             if file.endswith(".txt"):
 
 -                 file_path = os.path.join(root, file)
 
 -                 try:
 
 -                     # 以UTF-8读取文件内容
 
 -                     with codecs.open(file_path, "r", "utf-8") as utf_file:
 
 -                         content = utf_file.read()
 
 -                     
 
 -                     # 将内容以ANSI编码写回文件
 
 -                     with codecs.open(file_path, "w", "ansi") as ansi_file:
 
 -                         ansi_file.write(content)
 
 -                         
 
 -                     print("已成功将文件 {} 转换为ANSI编码".format(file_path))
 
 -                 
 
 -                 except Exception as e:
 
 -                     print("转换文件 {} 出错:{}".format(file_path, str(e)))
 
  
- # 替换为你的文件夹路径
 
 - folder_path = "文件夹路径"
 
 - convert_files_to_ansi(folder_path)
 
  复制代码 
 
请将上述代码中的"文件夹路径"替换为你要转换的文件夹的实际路径。运行代码后,它将遍历文件夹中的所有txt文件并将其从UTF-8转换为ANSI编码。转换后的文件将覆盖源文件,所以请确保在运行代码之前备份好原始文件,以防意外情况发生。 
 
另外请注意,ANSI编码是特定于操作系统和区域设置的,默认编码可能会有所不同。如果你需要使用其他特定的ANSI编码,请在代码中的`codecs.open`函数中将"ansi"替换为相应的编码名称,例如"gbk"。 |   
 
 
 
 |