Obsah

# Příkaz Input#

Načte data z otevřeného sekvenčního souboru.

### Syntaxe:

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

### Parametry:

fileNum: Číslo souboru, který obsahuje data, jež chcete načíst. Před použitím klíčového slova INPUT musí být soubor otevřen příkazem Open.

var: Číselná nebo řetězcová proměnná, které přiřadíte hodnoty načtené z otevřeného souboru.

Příkaz Input# přečte z otevřeného souboru číselné nebo řetězcové hodnoty a přiřadí data jedné či více proměnným. Číselné proměnné se načítají až do prvního znaku návrat vozíku (Asc=13), nový řádek (Asc=10), mezery nebo čárky. Řetězcové proměnné se načítají až do prvního znaku návrat vozíku (Asc=13), nový řádek (Asc=10) nebo čárky.

Data a datové typy v otevřeném souboru se musí objevit ve stejném pořadí jako proměnné, které jsou předány parametrem "var". Pokud přiřadíte nečíselnou hodnotu číselné proměnné, "var" se přiřadí hodnota "0".

U záznamů, které jsou odděleny čárkami, nelze čárku přiřadit k řetězcové proměnné. Uvozovky (") v souboru jsou také zahozeny. Pokud chcete ze souboru načíst tyto znaky, použijte příkaz Line Input# k načtení čistě textových souborů (souborů obsahujících jen tisknutelné znaky) řádek po řádku.

Pokud je při čtení datového prvku dosažen konec souboru, dojde k chybě a proces bude ukončen.

### Příklad:

    Sub ExampleWorkWithAFile
        Dim iCount As Integer, sFileName As String
        Dim sName As String, sValue As Integer
        sFileName = "C:\Users\ThisUser\data.txt"
        iCount = Freefile
        ' Zapíše data (která později přečteme pomocí Input) do souboru
        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
        ' Přečte soubor s daty pomocí 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

Související témata

Příkaz Close

Příkaz Open

Příkaz Print#

Příkaz Write#