如何读写文本文件

作者: SmallRookie | 来源:发表于2017-08-10 20:06 被阅读53次
实际案例

某文本文件编码格式已知(如UTF-8,GBK,BIG5),在Python 2.X和Python 3.X中分别如何读取该文件?

解决方案:

  • Python 2.X:写入文件前对Unicode编码,读入文件后对二进制字符串编码;
  • Python 3.X:open函数指定't'的文本模式,encoding指定编码格式。

注:
      字符串的语义发生了变化
    Python 2.X    Python 3.X
   --------------------------------------------
     str     ->   bytes
     unicode  ->   str

Python 2.X版本的代码如下:

# -*- coding: utf-8 -*-

# 打开文件
f = open('py2.txt', 'w')

s = u'你好'
# 写入文件
f.write(s.encode('gbk'))
# 关闭文件
f.close()

f = open('py2.txt', 'r')
# 读入文件
t = f.read().decode('gbk')
print t

f.close()

其运行结果为:

你好

Python 3.X版本的代码如下:

# 打开文件
f = open('py3.txt', 'wt', encoding='utf8')
# 将“你好”写入文件
f.write('你好')
# 关闭文件
f.close()

f = open('py3.txt', 'rt', encoding='utf8')
# 将文件内容读入
s = f.read()
print(s)

f.close()

其运行结果与Python 2.X版本代码运行结果一致。

相关文章

  • python高级编程技巧(7)

    一. 如何读写文本文件 实际案例: 某文本文件编码格式已知(如UTF-8,GBK,BIG5),在Python2.x...

  • 2.2、Python进阶02 文本文件的输入输出

    Python具有基本的文本文件读写功能。Python的标准库提供了更丰富的读写功能。文本文件的读写主要通过open...

  • Java IO流之拷贝(复制)文件

    方式一(字符流读写复制文件,仅限文本文件) 方式二(字符流缓冲区读写文件-高效,仅限文本文件) 方式三(字节流读写...

  • Python文本文件的输入输出操作学习

    Python具有基本的文本文件读写功能。Python的标准库提供有更丰富的读写功能。 文本文件的读写主要通过ope...

  • 如何读写文本文件

    实际案例 某文本文件编码格式已知(如UTF-8,GBK,BIG5),在Python 2.X和Python 3.X中...

  • 使用Haskell读写文件

    1. 直接读写文本文件 Haskell的Prelude库提供了两个函数用来直接读写文本文件,分别是readFile...

  • Python高效编程(四)

    实际编程和面试都会遇到的典型问题。 如何读写文本文件 如何设置文件的缓冲 如何访问文件的状态 如何使用临时文件 如...

  • C# File类创建读写修改文本文件

    上一篇使用读写流创建和修改,读取文本文件,本篇使用File类创建,修改,读写文本文件。 1. 创建 Write c...

  • day09 作业 2018-07-26

    文本文件读写 滚滚长江东逝水   二进制文件读写   json文件读写   姓名灰太狼电话234567[{'nam...

  • 文件和io(cookbook笔记)

    读写文本数据 读写文本数据 读写各种不同编码的文本数据 使用带有 rt 模式的 open() 函数读取文本文件 写...

网友评论

    本文标题:如何读写文本文件

    本文链接:https://www.haomeiwen.com/subject/lpdxrxtx.html