Python os.sendfile()

Python os.sendfile()方法

Python中的os.sendfile()方法用于从指定的偏移量开始,从指定的源文件描述符复制指定字节数到指定的dest文件描述符。
这个方法返回发送的总字节数,如果达到EOF(文件结尾),则返回0。

os.sendfile 语法

os.sendfile(dest, source, offset, count) 

os.sendfile 参数

dest:表示目标文件的文件描述符。

source:表示源文件的文件描述符

offset:表示起始位置的整数值。要发送的字节将从这个位置计数。

count:一个整型值,表示从源文件描述符发送的字节总数。

返回类型:该方法返回一个整型值,表示从源文件描述符发送到dest文件描述符的字节总数。如果到达EOF,返回0。

将下面的文本视为名为“Python_intro.txt”的文件的内容。

Python是一种被广泛使用的通用高级编程语言。它最初由Guido van Rossum于1991年设计,并由Python软件基金会开发。它的开发主要是为了强调代码的可读性,它的语法允许程序员用更少的代码行来表达概念。Python是一种编程语言,可以让您快速工作并更有效地集成系统。

os.sendfile 示例1

使用 os.sendfile() 方法

# Python program to explain os.sendfile() method 
  
# importing os module 
import os
  
  
# Source file path
source = './Python_intro.txt'
  
# destination file path
dest = './newfile.txt'
  
# Open both files and get
# the file descriptor
# using os.open() method
src_fd = os.open(source, os.O_RDONLY)
dest_fd = os.open(dest, os.O_RDWR | os.O_CREAT)
  
# Now send n bytes from
# source file descriptor
# to destination file descriptor
# using os.sendfile() method
offset = 0
count = 100
bytesSent = os.sendfile(dest_fd, src_fd, offset, count)
print("% d bytes sent / copied successfully." % bytesSent)
  
# Now read the sent / copied
# content from destination
# file descriptor 
os.lseek(dest_fd, 0, 0)
str = os.read(dest_fd, bytesSent)
  
# Print read bytes
print(str)
  
# Close the file descriptors
os.close(src_fd)
os.close(dest_fd)

输出:

100 bytes sent/copied successfully.
b'Python is a widely used general-purpose, high level programming language.
It was initially designed '

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程