2018/11/14

文件处理b模式

f=open('实验文件.txt','rb')
data=f.read()
print(data)                    #未指定解码
print(data.decode('gbk'))
f.close()
# encoding:utf-8
fo = open("temp.txt", "wb")
str = '中文'
str = str.encode('utf-8')
fo.write(str)
fo.close()

读取第一行

f = open("temp.txt")
line = f.readline()
print(type(line))
print(line)
f.close()

文件操作其他方法

f.close      <==判断文件是否关闭

f.encoding    <==文件编码方式

f.flush()      <==刷新,保存

f.name      <==文件名

f.tell()    《==光标当前位置

f.seek(参数)  《==控制光标移动位置

f.seek(参数1,参数2)   《==参数2表示从哪开始,一般默认从0开始

f.truncate()   <==文件截取

循环文件(用一条取一条)

f = open("temp.txt",'r+')
for i in f:
    print(i)
f.close()

读取大文件最后一行

# coding=gbk
f = open("temp.txt",'rb')
for i in f:
    offs=-9                            #大致估计少于一行字符数
    while True:
        f.seek(offs,2)
        data=f.readlines()
        if len(data)>1:
            print('文件最后一行%s'%(data[-1].encode('utf-8')))
            break
        offs=offs*2
f.close()
原文地址:https://www.cnblogs.com/2018-1025/p/9969934.html