文件处理(更新部分)
---恢复内容开始---
一、控制文件内指针移动
f.seek
文件内指针移动,只有t模式下的read(n),n代表的字符(字或字符)的个数,除此以外文件内指针的移动都是以字节为单位
f.seek(offset,whence)有两个参数,offset: 代表控制指针移动的字节数;whence:代表参照什么位置进行移动。
whence对应编号所对应的参考点:0,参照文件开头(默认的),可以在t和b模式下使用;1,参照当前所在的位置,必须在b模式下使用;
2,参照未见末尾,必须在b模式下使用。
1) seek在0模式下的移位取字符
2) seek在1模式下的移位取字符,(参考点在当前位置,只能在b模式下使用)
步骤:1,表示读取3个字节,指针在当前位置第一个字的后面;2,用tell来检测从文档开头位置到改字时(包括这个字)之间的字节总数;
3,证明检测指针的位置;4,读取f.read(3)对应的字节和汉字;5,seek(3,1)在whence1模式下基于f.read(3)指针位置向后移位3个字节;6,用tell()证明到seek(3,1)的总字节数,也即是对应的汉字;7,在seek(3,1)位置用f.read(3)再读取三个字节,打印出三个字节数,然后解码生成汉字“德”。
3)seek在2模式下的移位取字符(参考点在文件末尾,只能在b模式下使用)
---恢复内容结束---