`

python 每行读取文件

阅读更多

   某些软件,如notepad,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。 因此我们在读取时需要自己去掉这些字符,python中的codecs module定义了这个常量:

  [whj@localhost Python]$ vi readline.py                                                                                                  
  1 #!/usr/bin/python
  2 import codecs
  3 
  4 f = open("./Text.txt", "r");
  5 
  6 while True:
  7     line = f.readline()
  8     if line[:3] == codecs.BOM_UTF8:
  9         line = line[3:]
 10     if line:
 11          print line.decode("utf-8"),
 12     else:
 13         break
 14 
 15 print
 16 print
 17 print
 18 f.seek(0,0)
 19 
 20 for str in f:
 21     if str[:3] == codecs.BOM_UTF8:
 22         str = str[3:]
 23     print str.decode('utf-8'),
 24 
 25 f.close()


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics