Python OS file/directory os.fdopen() method
Python OS File/Directory os.fdopen() Method
Description
The method fdopen() returns an open file object connected to the file descriptor fd. You can then perform all defined functions on the file object.
Syntax
The syntax of the fdopen() method is as follows −
os.fdopen(fd, [, mode[, bufsize]]);
Parameters
- fd − This is the file descriptor for which the file object is to be returned.
-
mode − This is an optional parameter, a string indicating the mode in which the file should be opened. The most common values for mode are ‘r’ for reading, ‘w’ for writing (truncating the file if it already exists), and ‘a’ for appending.
-
bufsize − This is an optional parameter that specifies the file buffer size: 0 for unbuffered, 1 for line buffered, and any other positive value uses a buffer of (approximately) that size.
Return Value
This method returns an open file object associated with the file descriptor.
Example
The following example shows the use of the fdopen() method.
#!/usr/bin/python3
import os, sys
#Open a file
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
# Now get a file object for the above file.
fo = os.fdopen(fd, "w+")
# Tell the current position
print ("Current I/O pointer position :%d" % fo.tell())
# Write one string
fo.write( "Python is a great language.nYeah its great!!n");
# Now read this file from the beginning.
os.lseek(fd, 0, 0)
str = os.read(fd, 100)
print ("Read String is : ", str)
# Tell the current position
print ("Current I/O pointer position :%d" % fo.tell())
# Close opened file
fo.close()
print ("Closed the file successfully!!")
When we run the above program, it produces the following results −
Current I/O pointer position :0
Read String is : This is testPython is a great language.
Yeah its great!!
Current I/O pointer position :45
Closed the file successfully!!