1.tell 返回指针当前所在的位置
with open('Test.txt','r') as f:
print(f.read(3))
print(f.tell())
print(f.read(2))
print(f.tell())
pass
2.truncate 可以对源文件进行截取操作
fobjB = open('Test.txt','r',encoding='utf-8')
fobjB.truncate(15) # 保留前十五个字符
print(fobjA.read())
3.seek() 控制光标所在的位置
如果在操作文件的过程中,需要定位到其他位置进行操作 seek(offset,from)有两个参数,offset,偏移量单位字节,负数是往回偏移,正数是往前偏移 from位置:0表示文件开头,1表示当前位置,2表示文件末尾
with open('Test_备份.txt','rb') as f:
f.seek(4,0) # 光标从0的位置开始 向前移动【右】
data = f.read(2)
# print(data.decode('gbk'))
f.seek(-2,1) # 相当于光标有设置到 0 的位置
print(f.read(4).decode('gbk'))
f.seek(-6,2) # 2 表示光标在末尾出 往回移动了6个字符
print(f.read(4).decode('gbk'))
tips:
对于这种情况 用’r‘这种模式打开文件,在文本文件中,没有使用二进制的选项打开文件, 只允许从文件的开头计算相对位置,从文件尾部计算或者当前计算的话 就会引发异常