Spis treści

# Instrukcja Input#

Odczytuje dane z otwartego pliku sekwencyjnego.

### Składnia:

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

### Parametry:

fileNum: numer pliku zawierającego dane, które chcesz odczytać. Plik należy otworzyć instrukcją Open ze słowem kluczowym INPUT.

var: zmienna liczbowa lub łańcuchowa, do której przypisujesz wartości odczytane z otwartego pliku.

Instrukcja Input# odczytuje wartości numeryczne lub ciągi z otwartego pliku i przypisuje dane do jednej lub kilku zmiennych. Zmienna numeryczna jest odczytywana aż do wystąpienia pierwszego znaku powrotu karetki (ASCII=13), znaku nowego wiersza (ASCII=10), spacji lub przecinka. Zmienne w postaci ciągów są odczytywane aż do wystąpienia pierwszego znaku powrotu karetki (ASCII=13), znaku nowego wiersza (ASCII=10) lub przecinka.

Dane i typy danych w otwartym pliku muszą występować w takiej samej kolejności, jak zmienne przekazane w parametrze "zmienna". W przypadku przypisania wartości nienumerycznych do zmiennej numerycznej, "zmienna" przyjmuje wartość "0".

Rekordy oddzielone przecinkami nie mogą być przypisane do zmiennej w postaci ciągu. Cudzysłowy (") w pliku są także odrzucane. Aby odczytywać takie znaki z pliku, należy użyć instrukcji Line Input#, która odczytuje kolejne linie plików typowo tekstowych (zawierających wyłącznie znaki drukowalne).

Jeśli podczas odczytywania elementu danych zostanie osiągnięty koniec pliku, występuje błąd i proces jest przerywany.

### Przykład:

    Sub ExampleWorkWithAFile
        Dim iCount As Integer, sFileName As String
        Dim sName As String, sValue As Integer
        sFileName = "C:\Users\ThisUser\data.txt"
        iCount = Freefile
        ' Zapisz dane (które będą wczytane później na wejściu) do pliku
        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
        ' Wczytaj plik danych z wejścia
        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

Tematy pokrewne

Instrukcja Close

Instrukcja Open

Instrukcja Print#

Instrukcja Write#