文件IO 网络IO

文件操作 // open方法的模式、文件指针和操作
encoding = 'cp936'
这里cp936相当于gbk

ASCII GBK uncode utf-8

EOF = end of file

f.open('test1','wb')
f.write('1234'.encode())
output: 4

open 打开
read 读取
write 写入
close 关闭
resdline 行读取
readlines 多行读取
seek 文件指针操作
tell 指针位置

f= open('/etc/test','rwax+bt')
r------只读模式, 只能读取内容
f.read()

w------只写模式,先清空文件, 在写入。 文件必须存在
f.write('accsafa')

a------追加模式, 在文件末尾追加, 必须是给已知文件追加
x -----创建一个不存在的文件, 然后写入

+模式
为r.w.a.x 提供确实的功能,但是获取文件对象依旧按照r,w,a,x自己的特征;该模式不能单独使用,可以认为他是为前面的模式字符做功能增强

文件指针 , 指向当前字节位置
mode=r, 指针启示在0
mode=a,指针启示在EOF

seek模式 f.seek() 按照字节偏移
read()是按照字符读取的
这里分操作的是文本还是二进制文件
1)文本文件
f.seek(1,0) 表示从开始位置向后偏移一个字符,'1'这里不能为负数
f.seek(0,1) 表示从当前位置偏移0, 文本模式下,没啥用,必须是'0'
f.seek(1,2) 表示从EOF向后偏移1个字符。 '1'不能是负数

2)二进制文件
左边界不能超界

seek 可以强制往磁盘中写内存中的数据
因为write 之后不一定能直接读取到 , seek之后可以读取。

全部评论

相关推荐

01-14 19:01
吉首大学 Java
黑皮白袜臭脚体育生:加个项目吧,一般需要两个项目一业务一轮子呢,简历统一按使用了什么技术实现了什么功能解决了什么问题或提升了什么性能指标来写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务