IBM Lotus Symphony
|
Otvorí dátový kanál.
Open FileName As String [For Mode] [Access IOMode] [Protected] As [#]FileNumber As Integer [Len = DatasetLength]
FileName: Názov a cesta súboru, ktorý chcete otvoriť. Ak sa pokúsite čítať súbor, ktorý neexistuje (Prístup = Čítanie), zobrazí sa chybová správa. Ak sa pokúsite zapisovať do súboru, ktorý neexistuje (Prístup = Zapisovanie), vytvorí sa nový súbor.
Mode: Kľúčové slovo, ktoré určuje režim súboru. Platné hodnoty: Pripojiť (pripojiť k sekvenčnému súboru), Binárny (k údajom je možné pristupovať podľa bajtov použitím príkazov Get a Put), Vstup (otvorí dátový kanál pre čítanie), Výstup (otvorí dátový kanál pre zapisovanie) a Náhodný (upraví príbuzné súbory).
IOMode: Kľúčové slovo, ktoré definuje typ prístupu. Platné hodnoty: Čítanie (len na čítanie), Zapisovanie (len na zapisovanie), Čítanie Zapisovanie (obe).
Protected: Kľúčové slovo, ktoré definuje stav bezpečnosti súboru po jeho otvorení. Platné hodnoty: Zdieľaný (súbor môže byť otvorený inými aplikáciami), Zákaz čítania (súbor je chránený pred čítaním), Zákaz zapisovania (súbor je chránený pred zapisovaním), Zákaz zapisovania aj čítania (odmietne prístup k súboru).
FileNumber: Každý celočíselný výraz od 0 do 511 na určenie čísla voľného dátového kanála. Cez tento dátový kanál môžete potom odovzdávať príkazy na prístup k súboru. Číslo súboru musí byť určené funkciou FreeFile bezprostredne pred príkazom Open.
DatasetLength: Pre súbory s náhodnými prístupmi nastavte dĺžku záznamov.
![]() |
Upravovať môžete len obsah súboru, otvoreného príkazom Open. Ak sa pokúsite otvoriť už otvorený súbor, zobrazí sa chybová správa. |
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, "toto je riadok textu"
Print #iNumber, "Toto je iný riadok textu"
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