Collabora Office 23.05 Hjälp
Läser data från en öppen sekventiell fil.
Input #fileNum {,|;} var1 [, var2 [, ...]]
fileNum: Number of the file that contains the data that you want to read. The file must be opened with the Open statement using the key word INPUT.
var: A numeric or string variable that you assign the values read from the opened file to.
En Input#-sats läser numeriska värden eller strängar från en öppen fil och tilldelar data till en eller flera variabler. En numerisk variabel läses upp till den första vagnreturen (Asc=13), radmatningen (Asc=10), blanksteget eller kommatecknet. Strängvariabler läses upp till den första vagnreturen (Asc=13), radmatningen (Asc=10) eller kommatecknet.
Data och datatyper i den öppnade filen måste visas i samma ordning som de variabler som överförs i parametern "var". Om du tilldelar icke-numeriska värden till en numerisk variabel, så tilldelas "var" värdet "0".
Poster som separeras med kommatecken (,) kan inte tilldelas en strängvariabel. Citationstecken (") i filen ignoreras också. Om du vill läsa de här tecknen från filen kan du använda Line Input#-satsen för att läsa rena textfiler (filer som bara innehåller utskrivbara tecken) rad för rad.
Om slutet av filen nås vid läsning av ett dataelement uppstår ett fel och processen avbryts.
Sub ExampleWorkWithAFile
Dim iCount As Integer, sFileName As String
Dim sName As String, sValue As Integer
sFileName = "C:\Users\ThisUser\data.txt"
iCount = Freefile
' Skriv data till filen (som vi senare kommer att läsa in via Input)
Open sFileName For Output As iCount
sName = "Hamburg" : sValue = 200
Write #iCount, sName, sValue
sName = "New York" : sValue = 300
Write #iCount; sName, sValue
sName = "Miami" : sValue = 459
Write #iCount, sName, sValue
Close #iCount
' Läs datafil med hjälp av Input
iCount = Freefile
Open sFileName For Input As iCount
Input #iCount, sName, sValue
MsgBox sName & " " & sValue
Input #iCount; sName, sValue
MsgBox sName & " " & sValue
Input #iCount, sName, sValue
MsgBox sName & " " & sValue
Close #iCount
End Sub