Python3 os.fsync() 方法
概述
os.fsync() 方法强制将文件描述符为fd的文件写入硬盘。在Unix, 将调用fsync()函数;在Windows, 调用 _commit()函数。
如果你准备操作一个Python文件对象f, 首先f.flush(),然后os.fsync(f.fileno()), 确保与f相关的所有内存都写入了硬盘.在unix,Windows中有效。
Unix、Windows上可用。
语法
fsync()方法语法格式如下:
os.fsync(fd)
参数
-
fd -- 文件的描述符。
返回值
该方法没有返回值。
实例
以下实例演示了 fsync() 方法的使用:
#!/usr/bin/python3 import os, sys # 打开文件 fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT ) # 写入字符串 os.write(fd, "This is test") # 使用 fsync() 方法. os.fsync(fd) # 读取内容 os.lseek(fd, 0, 0) str = os.read(fd, 100) print ("读取的字符串为 : ", str) # 关闭文件 os.close( fd) print ("关闭文件成功!!")
执行以上程序输出结果为:
读取的字符串为 : This is test 关闭文件成功!!
Python3 os.lseek() 方法
概述
os.lseek() 方法用于设置文件描述符 fd 当前位置为 pos, how 方式修改。
在Unix,Windows中有效。
语法
lseek()方法语法格式如下:
os.lseek(fd, pos, how)
参数
-
fd -- 文件描述符。
-
pos -- 这是相对于给定的参数 how 在文件中的位置。。
-
how -- 文件内参考位置。SEEK_SET 或者 0 设置从文件开始的计算的pos; SEEK_CUR或者 1 则从当前位置计算; os.SEEK_END或者2则从文件尾部开始。
返回值
该方法没有返回值。
实例
以下实例演示了 lseek() 方法的使用:
#!/usr/bin/python3 import os, sys # 打开文件 fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT ) # 写入字符串 os.write(fd, "This is test") # 所有 fsync() 方法 os.fsync(fd) # 从开始位置读取字符串 os.lseek(fd, 0, 0) str = os.read(fd, 100) print ("Read String is : ", str) # 关闭文件 os.close( fd ) print ("关闭文件成功!!")
执行以上程序输出结果为:
关闭文件成功!!