Module (78%)
Section (81%)

Abriendo los streams: modos

Modo de apertura r: lectura

  • El stream será abierto en modo lectura.
  • El archivo asociado con el stream debe existir y tiene que ser legible, de lo contrario la función open() lanzará una excepción.

Modo de apertura w: escritura

  • El stream será abierto en modo escritura.
  • El archivo asociado con el stream no necesita existir. Si no existe, se creará; si existe, se truncará a la longitud de cero (se borrá); si la creación no es posible (por ejemplo, debido a los permisos del sistema) la función open() lanzará una excepción.

Modo de apertura a: adjuntar

  • El stream será abierto en modo adjuntar.
  • El archivo asociado con el stream no necesita existir; si no existe, se creará; si existe, el cabezal de grabación virtual se establecerá al final del archivo (el contenido anterior del archivo permanece intacto).

Modo de apertura r+: leer y actualizar

  • El stream será abierto en modo leer y actualizar.
  • El archivo asociado con el stream debe existir y tiene que ser escribible, de lo contrario la función open() lanzará una excepción.
  • Se permiten operaciones de lectura y escritura en el stream.

Modo de apertura w+: escribir y actualizar

  • El stream será abierto en modo escribir y actualizar.
  • El archivo asociado con el stream no necesita existir; si no existe, se creará; el contenido anterior del archivo permanece intacto.
  • Se permiten operaciones de lectura y escritura en el stream.


Seleccionando modo de texto y modo binario

Si hay una letra b al final de la cadena del modo significa que el stream se debe abrir en el modo binario.

Si la cadena del modo termina con una letra t el stream es abierto en modo texto.

El modo texto es el comportamiento predeterminado que se utiliza cuando no se especifica ya sea modo binario o texto.

Finalmente, la apertura exitosa del archivo establecerá la posición actual del archivo (el cabezal virtual de lectura/escritura) antes del primer byte del archivo si el modo no es a y después del último byte del archivo si el modo es a.


Modo texto Modo binario Descripción
rt rb lectura
wt wb escritura
at ab adjuntar
r+t r+b leer y actualizar
w+t w+b escribir y actualizar

EXTRA

También puedes abrir un archivo para su creación exclusiva. Puedes hacer esto usando el modo de apertura x. Si el archivo ya existe, la función open() lanzará una excepción.