7.5.1 File Objects

PyFileObject
This subtype of PyObject represents a Python file object.

PyTypeObject PyFile_Type
This instance of PyTypeObject represents the Python file type.

int PyFile_Check(PyObject *p)
Returns true if its argument is a PyFileObject.

PyObject* PyFile_FromString(char *name, char *mode)
Creates a new PyFileObject pointing to the file specified in name with the mode specified in mode.

PyObject* PyFile_FromFile(FILE *fp, char *name, char *mode, int (*close))
Creates a new PyFileObject from the already-open fp. The function close will be called when the file should be closed.

FILE * PyFile_AsFile(PyFileObject *p)
Returns the file object associated with p as a FILE *.

PyObject* PyFile_GetLine(PyObject *p, int n)
undocumented as yet

PyObject* PyFile_Name(PyObject *p)
Returns the name of the file specified by p as a PyStringObject.

void PyFile_SetBufSize(PyFileObject *p, int n)
Available on systems with setvbuf() only. This should only be called immediately after file object creation.

int PyFile_SoftSpace(PyFileObject *p, int newflag)
Sets the softspace attribute of p to newflag. Returns the previous value. This function clears any errors, and will return 0 as the previous value if the attribute either does not exist or if there were errors in retrieving it. There is no way to detect errors from this function, but doing so should not be needed.

int PyFile_WriteObject(PyObject *obj, PyFileObject *p, int flags)
Writes object obj to file object p.

int PyFile_WriteString(char *s, PyFileObject *p, int flags)
Writes string s to file object p.

guido@python.org