使用python打开一个txt文件,逐行读取,但是txt本身含有乱码,报错。有什么方法可以忽略这些错误继续读? 20
我现在用fp=codecs.open()和foreachlineinfp:这两句,准备对这个文件逐行分析。但是目标txt里面有不可读的内容,所以总是到那一部分就报错退出了...
我现在用fp = codecs.open()和for eachline in fp:这两句,准备对这个文件逐行分析。但是目标txt里面有不可读的内容,所以总是到那一部分就报错退出了,求一个方法忽略不能读的内容,把能读的读进去?
我现在用的是一个这样简单地逻辑:
i = 1
while i <= 1000000:
try:
for eachline in fp:
print (eachline)
i = i + 1
except Exception:
pass
但是有问题就是txt文件并没有读完整,感觉好像是遇到特定的行就认为是到了文件末尾了,实际上并没有到。 展开
我现在用的是一个这样简单地逻辑:
i = 1
while i <= 1000000:
try:
for eachline in fp:
print (eachline)
i = i + 1
except Exception:
pass
但是有问题就是txt文件并没有读完整,感觉好像是遇到特定的行就认为是到了文件末尾了,实际上并没有到。 展开
4个回答
展开全部
使用readlines(),方便快捷!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大约就是这样。没有调试过。
fp=fopen("xxxx.txt","rt")
en=0
while True:
try:
eachline=fp.readline()
except:
en+=1
if en>10000:break #如果出错1万次就不再读了。防死循环
continue
if x=="":break
print eachline
fp.close()
fp=fopen("xxxx.txt","rt")
en=0
while True:
try:
eachline=fp.readline()
except:
en+=1
if en>10000:break #如果出错1万次就不再读了。防死循环
continue
if x=="":break
print eachline
fp.close()
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
打开文件的时候用readlines()呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
循环里面加上try: .... except:.... 试试啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询