python递归遍历文件夹下所有文件并将.h与.cpp结尾的文件修改编码为UTF8
时间: 2024-04-24 15:25:07 浏览: 104
你可以使用以下Python代码来递归遍历文件夹下的所有文件,并将以.h和.cpp结尾的文件修改编码为UTF-8:
```python
import os
import codecs
def convert_encoding(file_path):
with codecs.open(file_path, 'r', encoding='ISO-8859-1') as f:
content = f.read()
with codecs.open(file_path, 'w', encoding='UTF-8') as f:
f.write(content)
def traverse_directory(directory):
for root, dirs, files in os.walk(directory):
for file in files:
if file.endswith('.h') or file.endswith('.cpp'):
file_path = os.path.join(root, file)
convert_encoding(file_path)
# 调用函数来遍历指定文件夹下的所有文件并修改编码
traverse_directory('your_directory_path')
```
这段代码首先定义了一个`convert_encoding`函数,用于将文件的编码从ISO-8859-1转换为UTF-8。然后定义了一个`traverse_directory`函数,用于递归遍历指定文件夹下的所有文件,并对以.h和.cpp结尾的文件调用`convert_encoding`函数进行编码转换。最后,通过调用`traverse_directory`函数并传入文件夹路径来实现递归遍历和编码转换的功能。请将`your_directory_path`替换为你要遍历的文件夹路径。
#### 引用[.reference_title]
- *1* *2* *3* [Linux 统计当前目录下文件数](https://blog.csdn.net/weixin_39568659/article/details/116695205)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文