python 编程语言在操作文件编码格式的应用


本文主要是对python 编程语言操作不同文件的编码格式的文件时,所需用到的相关实际应用方案的介绍,以及python 编程语言的相关代码的示例,以下就是文章的相关内容的具体介绍。

建立一个文件test.txt,文件格式用ANSI,内容为:abc中文用python来读取

  1. coding=gbk 
  2. print open("Test.txt").read()  
  3.  

结果:abc中文把文件格式改成UTF-8:显然,这里需要解码:

  1. coding=gbk 
  2. import codecs  
  3. print open("Test.txt").read().decode("utf-8")  
  4.  

结果:abc中文上面的test.txt我是用Editplus来编辑的,但当我用Windows自带的记事本编辑并存成UTF-8格式时,运行时报错:

  1. Traceback (most recent call last):  
  2. File "ChineseTest.py", line 3, in   
  3. print open("Test.txt").read().decode("utf-8")  
  4. UnicodeEncodeError: 'gbk' codec can't encode 
    character u'\ufeff' in position 0: illegal multibyte 
    sequence  
     

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

  1. coding=gbk 
  2. import codecs  
  3. data = open("Test.txt").read()  
  4. if data[:3] == codecs.BOM_UTF8:  
  5. datadata = data[3:]  
  6. print data.decode("utf-8")  

结果:abc中文以上的文章就是对 python 编程语言操作不同文件的编码格式的文件的实际操作步骤介绍。

相关内容

    暂无相关文章

评论关闭