|
50鱼币
有一批Unicode编码的TXT文件需要处理,用Python打开时出现错误:LookupError: unknown encoding: Unicode
求教解决方法(最好不要改变TXT的文件格式,因为文件太多!)
1.程序代码如下:
- import openpyxl
- contents=[]
- def read_txt():
- file_txt=open(r'1.txt','r',encoding = 'Unicode')#打开txt文件
- for i in file_txt:
- contents.append(i.split())#遍历txt文件内容存放到列表
- file_txt.close()
- print(contents)
- def write_excel():
- wb=openpyxl.Workbook()#创建1个工作簿
- ws=wb.create_sheet(u'测试1')#用工作簿去创建工作表sheet
- for i,content in enumerate(contents):
- for j in range(len(content)):
- ws.cell(i+1,j+1,content[j])#用工作表sheet调用单元格,写入内容
- wb.save('2.xlsx')#保存文件名
- read_txt()
- write_excel()
复制代码
2. 错误提示如下:
- Python 3.7.6 (tags/v3.7.6:43364a7ae0, Dec 18 2019, 23:46:00) [MSC v.1916 32 bit (Intel)] on win32
- Type "help", "copyright", "credits" or "license()" for more information.
- >>>
- =============== RESTART: E:\Work\Python\Excel\04-txt写入Excel文件.py ===============
- Traceback (most recent call last):
- File "E:\Work\Python\Excel\04-txt写入Excel文件.py", line 18, in <module>
- read_txt()
- File "E:\Work\Python\Excel\04-txt写入Excel文件.py", line 4, in read_txt
- file_txt=open(r'1.txt','r',encoding = 'Unicode')#打开txt文件
- LookupError: unknown encoding: Unicode
复制代码
本帖最后由 tryhi 于 2021-1-11 15:19 编辑
- import chardet
- f=open('1.txt', 'rb')
- data = f.read()
- print(chardet.detect(data))
复制代码
先判断一下是什么格式吧
Unicode编码应该是用UTF-16
|
最佳答案
查看完整内容
先判断一下是什么格式吧
Unicode编码应该是用UTF-16
|