Module
Contents
Index 🔎︎

# Open Statement

Abre una canal de datos.

## Sintaxis:

    Open NomeFicheru As String [For Mou] [Access MouES] [Protected] As [#]NúmberuFicheru As Integer [Len = LlonxituConxuntuDatos]

## Parámetros:

FileName: Nome y ruta del ficheru que quies abrir. Si quies lleer un ficheru que nun esista (Access = Read), aparecera un mensaxe de fallu. Si intentes abrir un ficheru que nun esiste (Access = Write), un nuevu ficheru va ser creáu.

Mode: Pallabra clave qu'especifica el mou del ficheru. Los valores permitíos son: Append (amiesta a un ficheru secuencial), Binary (datos que puen ser accesados usando Get y Put), Input (abre datos de canal pa ser lleíos), Output (abre canales de datos pa escritura), y Random (edita valores relativos).

ModoES: Pallabra clave que define'l tipu d'accesu. Valores válidos: Read (namái llectura), Write (namái escritura), Read Write (dambos).

Protexíu: Pallabra clave que define l'estáu de seguridá d'un ficheru dempués de la so apertura. Valores válidos: Shared (el ficheru pue abrise con otres aplicaciones), Lock Read (el ficheru ta protexíu contra llectura), Lock Write (el ficheru ta protexíu contra escritura), Lock Read Write (torga l'accesu al ficheru).

NúmberuFicheru: Cualquier espresión entera de 0 a 511 qu'indica'l númberu d'una canal de datos llibre. De siguío pue pasar ordes al traviés de la canal de datos p'aportar al ficheru. El númberu de ficheru tien de determinalo la función FreeFile xusto enantes de la instrucción Open.

LongitudJuegoDatos P'ficheros d'accesu aleatoriu, defina'l llargor de los rexistros.

Namái pue modificar el conteníu de los ficheros que s'abrieren cola instrucción Open. Si intenta abrir un ficheru que yá ta abiertu, va apaecer un mensaxe de fallu.

## Exemplu:

    Sub ExampleWorkWithAFile

    Dim iNumber As Integer

    Dim sLine As String

    Dim aFile As String

    Dim sMsg As String

        aFile = "c:\data.txt"

        iNumber = Freefile

        Open aFile For Output As #iNumber

        Print #iNúmberu, "Esta ye una llinia de testu"

        Print #iNúmberu, "Esta ye otra llinia de testu"

        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