Module
Contents
Index 🔎︎

# Input# Statement

從開啟的順序檔案讀取資料。

## 語法：

Input #FileNumber As Integer; var1[, var2[, var3[,...]]]

## 參數：

FileNumber：包含要讀取之資料的檔案之號碼。該檔案必須使用 INPUT 關鍵字透過 Open 陳述式開啟。

var：數值型或字串型變數，用於指定要從已開啟檔案讀取的值。

Input# 陳述式從開啟的檔案中讀取數值或字串，並將這些資料指定給一個或多個變數。數值型變數的讀取程序在遇到第一個斷行鍵 (Asc=13)、斷行 (Asc=10)、空格或逗號時停止，而字串型變數的讀取程序在遇到第一個斷行鍵 (Asc=13)、斷行 (Asc=10) 或逗號時停止。

在已開啟的檔案中，資料和資料類型的出現順序必須與「var」參數中變數的傳送順序相同。如果將非數值型值指定給某個數值型變數，則「var」將被指定為數值「0」。

以逗號分隔的條目無法指定為字串變數。檔案中的引號 (") 也將被忽略。如果要從檔案中讀取這些字元，請使用 Line Input# 陳述式逐行讀取純文字檔案 (僅包含可列印字元的檔案)。

如果在讀取某個資料元素時到達了檔案結尾處，則會發生錯誤並中斷該程序。

## 示例：

    Sub ExampleWorkWithAFile

    Dim iCount As Integer

    Dim sName As String

    Dim sValue As Integer

    Dim sFileName As String

    sFileName = "c:\data.txt"

    iCount = Freefile

    ' 將資料寫入檔案（稍後以 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

    iCount = Freefile

    ' 用 Input 讀取資料檔

    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