lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


于 2012/3/21 14:18, Dirk Laurie 写道:
I can't quite understand what some of the modes do for io.open as explained
in 5.1 manual. Specifically, I'm not sure what "r+", "w+", and "a+" modes
do.
Even the manual (for 5.1 at least) says: This string is exactly what
is used in the standard C function fopen.

Which means:

        r      Open  text  file  for  reading.  The stream is positioned at the
               beginning of the file.

        r+     Open for reading and writing.  The stream is positioned  at  the
               beginning of the file.

        w      Truncate  file  to  zero length or create text file for writing.
               The stream is positioned at the beginning of the file.

        w+     Open for reading and writing.  The file is created  if  it  does
               not  exist, otherwise it is truncated.  The stream is positioned
               at the beginning of the file.

        a      Open for appending (writing at end of file).  The file  is  cre‐
               ated  if it does not exist.  The stream is positioned at the end
               of the file.

        a+     Open for reading and appending (writing at end  of  file).   The
               file is created if it does not exist.  The initial file position
               for reading is at the beginning  of  the  file,  but  output  is
               always appended to the end of the file.
explain clearly