Shutil module in Python provides many functions of high-level operations on files and collections of files. It comes under Python’s standard utility modules. This module helps in automating process of chowning and removal of files and directories.
shutil.copyfileobj() method in Python is used to copy the contents of a file-like object to another file-like object. By default this method copy data in chunks and if want we can also specify the buffer size through length parameter.
This method copies the content of the file from the current file position to the end of the file.
Syntax: shutil.copyfileobj(fsrc, fdst[, length])
Parameters:
fsrc: A file-like object representing the source file to be copied
fdst: A file-like object representing the destination file, where fsrc will be copied.
length (optional): An integer value denoting buffer size.
File-like object are mainly StringIO objects, connected sockets and actual file objects.
Return Type: This method does not return any value.
Code: Use of shutil.copyfileobj() method to copy the contents of source file-like object to destination file-like object
Python3
# Python program to explain shutil.copyfileobj() method # importing shutil module import shutil # Source file source = 'file.txt' # Open the source file # in read mode and # get the file object fsrc = open (source, 'r' ) # destination file dest = 'file_copy.txt' # Open the destination file # in write mode and # get the file object fdst = open (dest, 'w' ) # Now, copy the contents of # file object f1 to f2 # using shutil.copyfileobj() method shutil.copyfileobj(fsrc, fdst) # We can also specify # the buffer size by passing # optional length parameter # like shutil.copyfileobj(fsrc, fdst, 1024) print ( "Contents of file object copied successfully" ) # Close file objects f1.close() f2.close() |
Contents of file object copied successfully