Edukiak
Indizea 🔎︎

# Open instrukzioa

Datu-kanala irekitzen du.

## Sintaxia:

    Open FitxategiIzena As String [For Modua] [Access S/I_modua] [Babesa] As [#]FitxategiZenbakia As Integer [Len = DatuMultzoLuzera]

## Parametroak:

FitxategiIzena: Irekiko den fitxategiaren izena eta bide-izena. Ez dagoen fitxategi bat irakurtzen saiatzen bazara (Access = Read), errore-mezua agertuko da. Ez dagoen fitxategi batean idazten saiatzen bazara (Access = Write), fitxategi berria sortuko da.

Modua: Fitxategi modua zehazten duen gako-hitza. Baliozko balioak hauek dira: Append (erantsi fitxategi sekuentzialari), binary (datuak byten bidez eskuratu daitezke Get eta Put erabiliz), Input (datu-kanala irakurtzeko irekitzen du), Output (datu-kanala idazteko irekitzen du) eta Random (fitxategi erlatiboak editatzen ditu).

S/I modua: Atzipen mota zehazten duen gako-hitza. Baliozko balioak: Read (irakurtzeko soilik), Write (idazteko soilik), Read Write (biak).

Babesa: Fitxategi bat irekitakoan, haren segurtasun-egoera zehazten duen gako-hitza. Baliozko balioak: Shared (fitxategia beste aplikazio batzuen bidez ireki daiteke), Lock Read (fitxategia irakurketaren kontra babestuta dago), Lock Write (fitxategia idazketaren kontra babestuta dago), Lock Read Write (fitxategi-atzipena ukatzen du).

FitxategiZenbakia: Datu-kanal baten zenbakia adierazten duen 0tik 511ra bitarteko osoko adierazpen oro. Orduan, komandoak datu-kanal bidez pasa ditzakezu fitxategia atzitzeko. Fitxategi-zenbakia Open instrukzioaren aurretik zehaztu behar da FreeFile funtzioaren bidez.

DatuMultzoLuzera: Erregistroen luzera ezartzen du ausazko atzipen-fitxategientzat.

Open instrukzioaren bidez irekitako fitxategien edukia bakarrik alda dezakezu. Lehendik irekita dagoen fitxategia irekitzen saiatzen bazara, errore-mezua agertuko da.

## Adibidea:

    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 #iZenbakia, "Hau testu-lerro bat da"
        Print #iZenbakia, "Hau beste testu-lerro bat da"
        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