python处理不同编码的文件并保存编码为utf-8
时间: 2023-09-20 11:10:05 浏览: 102
在 Python 中,处理不同编码的文件并将其保存为 UTF-8 编码可以使用以下步骤:
1. 以指定编码打开文件,读取文件内容;
2. 将读取到的文件内容转换为 Unicode 编码;
3. 将 Unicode 编码的文件内容编码为 UTF-8 编码;
4. 将编码后的文件内容保存到文件中。
具体代码如下:
```python
import codecs
# 以指定编码打开文件,读取文件内容
with codecs.open("filename.txt", "r", encoding="gbk") as f:
content = f.read()
# 将读取到的文件内容转换为 Unicode 编码
content_unicode = content.encode("utf-8", "ignore").decode("utf-8")
# 将 Unicode 编码的文件内容编码为 UTF-8 编码
content_utf8 = content_unicode.encode("utf-8")
# 将编码后的文件内容保存到文件中
with open("filename_utf8.txt", "wb") as f:
f.write(content_utf8)
```
其中,`filename.txt` 是要转换编码的文件名,`gbk` 是文件的原始编码;`filename_utf8.txt` 是转换编码后保存的文件名。通过 `codecs` 模块的 `open` 方法可以以指定编码打开文件,使用 `encode` 方法将 Unicode 编码转换为 UTF-8 编码,使用 `write` 方法将编码后的文件内容保存到文件中。
阅读全文