Instrucción Open

Contenido

# Open Statement

Abre un canal de datos.

### Sintaxis:

    Open pathname For mode [Access io] [locking] As [#]filenum [Len=recLen]

### Parámetros:

pathname: Path and name of the file to open. If you try to read a file that does not exist (Access = Read), an error message appears. If you try to write to a file that does not exist (Access = Write), a new file is created.

mode: palabra clave que especifica el modo del archivo. Valores válidos: Append (añadir a un archivo secuencial), Binary (se puede acceder a los datos por bytes utilizando Get y Put), Input (abre un canal de datos para lectura), Output (abre un canal de datos para escritura) y Random (edita archivos relativos).

io: Keyword that defines the access type. Valid values: Read (read-only), Write (write-only), Read Write (both).

locking: Keyword that defines the security status of a file after opening. Valid values: Shared (file may be opened by other applications), Lock Read (file is protected against reading), Lock Write (file is protected against writing), Lock Read Write (denies file access).

filenum: Any integer expression from 0 to 511 to indicate the number of a free data channel. You can then pass commands through the data channel to access the file. The file number must be determined by the FreeFile function immediately before the Open statement.

recLen: For Random access files, set the length of the records.

Solo se puede modificar el contenido de los archivos que se hayan abierto con la instrucción Open. Si intenta abrir un archivo que ya está abierto, aparecerá un mensaje de error.

### Ejemplo:

      Sub ExampleWorkWithAFile
          Dim iNumber As Integer
          Dim sLine As String
          Dim aFile As String
          Dim sMsg As String
          aFile = "C:\Users\ThisUser\data.txt"
          iNumber = Freefile
          Open aFile For Output As #iNumber
          Print #iNumber, "Este es un renglón de texto"
          Print #iNumero, "Este es otro renglón de texto"
          Close #iNumber
          iNumber = Freefile
          Open aFile For Input As iNumber
          While Not eof(iNumber)
              Line Input #iNumber, sLine
              If sLine <>"" Then
                  sMsg = sMsg & sLine & chr(13)
              End If
          Wend
          Close #iNumber
          MsgBox sMsg
      End Sub

      Sub ExampleWorkWithAFile
          Dim iNumber As Integer
          Dim sLine As String
          Dim aFile As String
          Dim sMsg As String
          aFile = "~/data.txt"
          iNumber = Freefile
          Open aFile For Output As #iNumber
          Print #iNumber, "Este es un renglón de texto"
          Print #iNumero, "Este es otro renglón de texto"
          Close #iNumber
          iNumber = Freefile
          Open aFile For Input As iNumber
          While Not eof(iNumber)
              Line Input #iNumber, sLine
              If sLine <>"" Then
                  sMsg = sMsg & sLine & chr(13)
              End If
          Wend
          Close #iNumber
          MsgBox sMsg
      End Sub

If the Open statement tries to open a file to which the current user does not have read/write permissions, an I/O error will be raised.

Temas relacionados

Close Statement

Función FreeFile

Input# Statement

Instrucción Print#

¡Necesitamos su ayuda!