文件定位
tell()
文件定位,指的是当前文件指针读取到的位置,光标位置。在读写文件的过程中,如果想知道当前的位置,可以使用tell()来获取。
每个汉字为两个字节
若文档为英文呢?
对于中文来讲,每次读取到一个汉字,实际占用了2个字符
truncate函数:可以对源文件进行截取操作
seek()
如果在操作文件的过程中,需要定位到其他位置进行操作,用seek()
seek(offset,form)有两个参数,offset,偏移量单位字节,负数是往回偏移,正数是往前偏移,from位置:0表示文件开头,1表示当前位置,2表示文件末尾。
示例
原始文件
为什么一直用rb来读呢?我们可以试试看只用r
为什么会在往左移动时报错呢?
对于这种情况【用r这种模式打开文件】,在文本文件中,没有使用二进制的选项打开文件,只允许从文件的开头计算相对位置,从文件尾部或者当前计算的话,就会引发异常。