作者james732 (好人超)
看板Python
标题[问题] 处理同资料夹下不同编码的档案
时间Wed Feb 13 00:12:31 2019
我的资料夹下有一堆纯文字档案
但是它们有些是big5,有些是UTF-8
我想用os.walk去逐一读取它们,类似这样
判断每一行里是不是包含我指定的keyword:
def search(directory, keyword):
for (a, _, filenames) in walk(directory):
for f in filenames:
file = open(a + "\\" + f, "r",
encoding='UTF-8')
lines = file.readlines()
for l in lines:
if keyword in l:
# do something
问题是以上程式码对於UTF-8编码的档案都没问题
但如果是遇到混杂的BIG5就会错误
我想请问,这种混杂编码的情况,要怎麽处理会比较好呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.217.181.63
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1549987954.A.F20.html
1F:→ djshen: 用rb开, decode utf8, 有error就decode big5? 02/13 01:16
2F:→ lajji: Try except 02/13 11:21
3F:推 cspy: error='replace' 02/18 01:43