Open-uttrykket

Opnar ein datakanal.

Syntaks:

Diagram over uttrykket Open

Diagram over access fragment

Diagram over uttrykket locking fragment


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

Parametrar:

pathname: Sti til og namn på fila du vil opna.Viss du prøver å lesa ei fil som ikkje finst (Access = Read), får du ei feilmelding. Prøver du å skriva til ei fil som ikkje finst, vert denne fila laga som ny fil.

Mode: Nøkkelord som bestemmer filmodus. Gyldige verdiar: Append (legg til i sekvensiell fil), Binary (data er tilgjengelege som byte med Get og Put), Input (opnar datakanal for lesing), Output (opnar datakanal for skriving) og Random (redigerar relative filer).

io: nøkkelord som definerer tilgangstypen. Gyldige verdiar er: Read only (kan berre lesast frå, skrivesperra), Write (kan berre skrivast til, lesesperra), Read Write (begge).

locking: nøkkelord som definerer tryggingsstatusen til fila etter at ho er opna. Gyldige verdiar er: Shared (fila kan opnast av andre program), Lock Read (fila er verna mot lesing), Lock Write (fila er verna mot skriving), Lock Read Write (nektar filtilgang).

filenum: Kva heiltal som helst frå 0 til 511 for å indikera nummeret på ein fri datakanal. Du kan deretter overføra kommandoar gjennom datakanalen for å få tilgang til fila. Filnummeret må bestemmast av funksjonen FreeFile like før Open-kommandoen.

recLen: Set lengda på postane i Random access-filer.

note

Du kan endra innhaldet i ei fil berre viss ho er opna med uttrykket Open. Viss du prøver å opna ei fil som er opna frå før, får du ei feilmelding.


Eksempel:


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 #iNumber, "Dette er ei tekstlinje"
    Print #iNumber, "Dette er ei tekstlinje til"
    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

Støtt oss!