IBM Lotus Symphony
|
Leser data fra en åpen sekvensiell fil.
Input #Filnummer som heltall; var1[, var2[, var3[,...]]]
Filnummer: Nummeret til filen som inneholder dataene du vil lese. Filen må åpnes med Open-setningen med nøkkelordet INPUT.
var: En numerisk variabel eller strengvariabel som du tildeler verdiene som leses fra den åpnede filen til.
Input#-setningen leser numeriske verdier eller strenger fra en åpen fil og tildeler dataene til én eller flere variabler. En numerisk variabel leses frem til første linjeskift (Asc=13), ny linje (Asc=10), mellomrom eller komma. Strengvariabler leses frem til første linjeskift (Asc=13), ny linje (Asc=10) eller komma.
Data og datatyper i den åpnede filen må stå i samme rekkefølge som variablene som sendes i "var"-parameteren. Hvis du tildeler ikke-numeriske verdier til en numerisk variabel, blir "var" tildelt verdien "0".
Poster som er atskilt med komma, kan ikke tildeles til en strengvariabel. Anførselstegn (") i filen blir også oversett. Hvis du vil lese disse tegnene fra filen, bruker du Line Input#-setningen for å lese rene tekstfiler (filer som bare inneholder utskrivbare tegn) linje for linje.
Hvis slutten av filen blir nådd mens et dataelement leses, oppstår en feil, og prosessen blir avbrutt.
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 en linje med tekst"
Print #iNumber, "Dette er en annen linje med tekst"
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