Author vstinner
Recipients docs@python, socketpair, vstinner
Date 2011-05-18.11:16:06
SpamBayes Score 1.31388e-08
Marked as misclassified No
Message-id <1305717367.97.0.979677541207.issue12103@psf.upfronthosting.co.za>
In-reply-to
Content
c, e, m and x flags are specific to the GNU libc. Python 2 does basically pass the mode to fopen() unmodified (there is one exception, the U flag). fopen() of Visual C++ 2005 has other flags:

c
Enable the commit flag for the associated filename so that the contents of the file buffer are written directly to disk if either fflush or _flushall is called.

n
Reset the commit flag for the associated filename to "no-commit." This is the default. It also overrides the global commit flag if you link your program with COMMODE.OBJ. The global commit flag default is "no-commit" unless you explicitly link your program with COMMODE.OBJ (see Link Options).

N
Specifies that the file is not inherited by child processes.

S
Specifies that caching is optimized for, but not restricted to, sequential access from disk.

R
Specifies that caching is optimized for, but not restricted to, random access from disk.

T
Specifies a file as temporary. If possible, it is not flushed to disk.

D
Specifies a file as temporary. It is deleted when the last file pointer is closed.

ccs=ENCODING
Specifies the coded character set to use (UTF-8, UTF-16LE, or UNICODE) for this file. Leave unspecified if you want ANSI encoding. This option is available in Visual C++ 2005 and later.

http://msdn.microsoft.com/en-us/library/yeby3zcb(v=vs.80).aspx

I don't think that non standard modes should be documented in Python doc, but we may add links to specific documentations like the GNU libc and Microsoft fopen().

--

This issue is specific to Python 2, Python 3 doesn't use fopen() anymore.
History
Date User Action Args
2011-05-18 11:16:08vstinnersetrecipients: + vstinner, docs@python, socketpair
2011-05-18 11:16:07vstinnersetmessageid: <1305717367.97.0.979677541207.issue12103@psf.upfronthosting.co.za>
2011-05-18 11:16:07vstinnerlinkissue12103 messages
2011-05-18 11:16:06vstinnercreate