udtrykket Input#

Læser data fra en åben sekventiel fil.

Syntaks:

Erklæringsdiagrammet Input


Input #fileNum {,|;} var1 [, var2 [, ...]]

Parametre:

fileNum: Nummeret på den fil, som indeholder de data, du vil læse. Filen skal åbnes med erklæringe Open med nøgleordet INPUT.

var: En numerisk strengvaribel, som du tildeler værdier, læst fra den åbnede fil.

Input#-sætningen læser numeriske værdier eller strenge fra en åben fil og tildeler dataene til en eller flere variable. En numerisk variabel læses op til det første linjeskift (CR) (ASCII=13), linjeskift (LF) (ASCII=10), mellemrum eller komma. Strengvariable læses til det første linjeskift (CR) (ASCII=13), linjeskift (LF) (ASCII=10) eller komma.

Data og datatyper i den åbnede fil skal optræde i samme orden som variablene, der overføres i "var"-parameteren. Hvis du tildeler ikke-numeriske værdier til en numerisk værdi, tildeles "var" en værdi på "0".

Dataposter, som er adskilt af kommaer, kan ikke anvendes i en strengvariabel. Citationstegn (") i filen ignoreres også. Hvis du vil læse disse tegn fra filen, så brug Line Input#-sætningen til at læse rene tekstfiler (filer, som kun indeholder tegn, der kan udskrives) linje for linje.

Hvis slutningen på filen nås under læsningen af et dataelement, opstår der en fejl og processen afbrydes.

Eksempel:


Sub ExampleWorkWithAFile
    Dim iCount As Integer, sFileName As String
    Dim sName As String, sValue As Integer
    sFileName = "C:\Users\ThisUser\data.txt"
    iCount = Freefile
    REM Skriv data (som vi senere vil indlæse med Input ) til fil
    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
    REM Læs datafil ved hjælp af 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

Støt os venligst!