這段代碼報錯Traceback (most recent call last): File "D:\pythonProject\venv\Lib\site-packages\pandas\io\common.py", line 25, in <module> f.write(t.read()) UnicodeDecodeError: 'cp950' codec can't decode byte 0xc8 in position 6678: illegal multibyte sequence,代碼如下import os import shutil from datetime import date # 指定目标文件夹路径和本地路径 src_folder = r"Y:\iplas\Robot_Log\SMT" dst_folder = "D:\測試log" # 获取今天的日期 today = date.today() # 遍历目标文件夹中的所有文件 for file_name in os.listdir(src_folder): if file_name.endswith('.txt'): file_path = os.path.join(src_folder, file_name) if date.fromtimestamp(os.path.getmtime(file_path)) == today: # 如果是今天生成的 txt 文件,复制到本地路径 shutil.copy(file_path, os.path.join(dst_folder, file_name)) # 将本地路径中所有 txt 文件的内容汇总到一个文档 with open('汇总文档.txt', 'w') as f: for file_name in os.listdir(dst_folder): if file_name.endswith('.txt'): with open(os.path.join(dst_folder, file_name), 'r') as t: f.write(t.read())
时间: 2024-01-11 10:02:50 浏览: 97
rich-traceback:Python 日志记录模块的信息回溯
这个错误是因为在读取文件时,使用了错误的编码方式。你可以尝试使用正确的编码方式来读取文件,例如使用 UTF-8 编码来读取文件,代码如下:
```
with open(os.path.join(dst_folder, file_name), 'r', encoding='utf-8') as t:
f.write(t.read())
```
如果你不确定文件的编码方式,可以尝试使用 chardet 库来检测文件的编码方式,代码如下:
```
import chardet
with open(os.path.join(dst_folder, file_name), 'rb') as t:
encoding = chardet.detect(t.read())['encoding']
with open(os.path.join(dst_folder, file_name), 'r', encoding=encoding) as t:
f.write(t.read())
```
这样可以自动检测文件的编码方式并使用正确的方式读取文件。
阅读全文