Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để buộc ghi tệp có tệp tin fd vào đĩa bằng Python?


Bạn phải sử dụng hàm fdatasync (fd) để buộc ghi tệp có ký hiệu tệp fd vào đĩa. Nó không buộc cập nhật siêu dữ liệu. Cũng lưu ý rằng điều này chỉ có sẵn trên Unix.

Một giải pháp đa nền tảng hơn sẽ là sử dụng fsync (fd) vì nó buộc ghi tệp có tệp tin có định dạng fd vào đĩa. Trên Unix, hàm này gọi hàm fsync () gốc; trên Windows, hàm MS _commit ().

Ví dụ

import os, sys
# Open a file
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
os.write(fd, "This is test")
# Now you can use fsync() method.
os.fsync(fd)
# Now read this file from the beginning
os.lseek(fd, 0, 0)
str = os.read(fd, 100)
print "Read String is : ", str
os.close( fd )

Đầu ra

Khi chúng tôi chạy chương trình trên, nó tạo ra kết quả sau:

Read String is :  This is test