码迷,mamicode.com
首页 > 编程语言 > 详细

python 读写文本文件

时间:2016-06-17 19:08:30      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

本人最近新学python ,用到文本文件的读取,经过一番研究,从网上查找资料,经过测试,总结了一下读取文本文件的方法.

1、在读取文本文件的时无非有两种方法:

  a、f=open(‘filename‘, ‘r‘)

          content=f.read().decode(‘utf-8‘)

  b、f=codecs.open(XXX, encoding=‘utf-8‘)

    content=f.read()

2、读取Utf8格式的文本文件

  

  # -*- coding: UTF8 -*-
  import os
  import sys
  import os.path
  import codecs

  ‘‘‘读取文本Utf8格式的文本文件,不需要设置特殊的编码方式,安装默认就行‘‘‘
  def ReadUtf8TxtFile1(strFileName):
    ‘‘‘之所以加这样一句,是因为如果文件名包含中文路径,导致乱码‘‘‘
    fileName = unicode(strFileName, "utf8")
    if os.path.isfile(fileName):
      filehandler = open(fileName,‘r‘)
      outStr = filehandler.read()
      filehandler.close()
      return outStr

3、读取Ansi格式的文本文件

  ‘‘‘读取Ansi格式的文本文件,不需要设置特殊的编码方式,安装默认就行‘‘‘
  def ReadAnsiTxtFile(strFileName):
    ‘‘‘之所以加这样一句,是因为如果文件名包含中文路径,导致乱码‘‘‘
    fileName = unicode(strFileName, "utf8")
    if os.path.isfile(fileName):
      filehandler = codecs.open(fileName,‘r‘,‘gbk‘)
      outStr = filehandler.read()
      filehandler.close()
      return outStr

4、读取文本unicode格式的文本文件

  ‘‘‘读取文本unicode格式的文本文件,不需要设置特殊的编码方式,安装默认就行‘‘‘
  def ReadUnicodeTxtFile(strFileName):
    ‘‘‘之所以加这样一句,是因为如果文件名包含中文路径,导致乱码‘‘‘
    fileName = unicode(strFileName, "utf8")
    if os.path.isfile(fileName):
      filehandler = codecs.open(fileName,‘r‘,‘utf-16‘)
      outStr = filehandler.read()
      filehandler.close()
      return outStr

5、读取utf-8编码文件(有BOM)格式的文本文件

  ‘‘‘读取utf-8编码文件(有BOM)格式的文本文件,不需要设置特殊的编码方式,安装默认就行‘‘‘
  def ReadUtf8BOMTxtFile(strFileName):
    ‘‘‘之所以加这样一句,是因为如果文件名包含中文路径,导致乱码‘‘‘
    fileName = unicode(strFileName, "utf8")
    if os.path.isfile(fileName):
      filehandler = codecs.open(fileName,‘r‘)
      outStr = filehandler.read()
      if outStr[:3] == codecs.BOM_UTF8:
        outStr = outStr[3:].decode("utf8")
      filehandler.close()
      return outStr

6、写文本文件

  ‘‘‘写文本文件,如果文件不存在,则建立文件,如果存在,则以追加方式写入strConent‘‘‘
  def WriteFile(strFileName,strContent):
    ‘‘‘之所以加这样一句,是因为如果文件名包含中文路径,导致乱码‘‘‘
    fileName = unicode(strFileName, "utf8")
    writeStyle = ‘w‘
    if os.path.isfile(strFileName):
      writeStyle = ‘a‘
      filehandler = open(fileName,‘a‘)
      filehandler.write(strContent)
      filehandler.close()

python 读写文本文件

标签:

原文地址:http://www.cnblogs.com/shaosks/p/5594722.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!