Input# Statement

Đọc dữ liệu từ một tập tin dãy còn mở.

Syntax:

Input Statement diagram


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

Parameters:

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.

Câu lệnh Input# đọc các giá trị thuộc số hoặc các chuỗi từ một tập tin còn mở, và gán dữ liệu cho một hai nhiều biến. Một biến thuộc số được đọc đến khi gặp đầu tiên một ký tự xuống dòng (CR, Asc=13; LF, Asc=10), dấu cách hoặc dấu phẩy. Biến chuỗi được đọc đến khi gặp đầu tiên một ký tự xuống dòng (CR, Asc=13; LF, Asc=10) hoặc dấu phẩy.

Dữ liệu và các kiểu dữ liệu trong tập tin được mở phải xuất hiện theo cùng một thứ tự với các biến được gửi qua trong tham số « var ». Nếu bạn gán giá trị không thuộc số cho một biến thuộc số, « var » được gán một giá trị số không.

Các bản ghi phân tách bằng dấu phẩy không thể được gán cho một biến chuỗi. Dấu nháy kép « " » trong tập tin cũng bị bỏ qua. Nếu bạn muốn đọc các ký tự như vậy trong tập tin, hãy dùng câu lệnh Line Input# để đọc từng dòng tập tin văn bản thuần (tập tin chỉ chứa các ký tự có thể in ra).

Nếu tới kết thúc tập tin trong khi đọc một phần tử dữ liệu thì gặp lỗi nên hủy bỏ tiến trình.

Example:


Sub ExampleWorkWithAFile
Dim iCount As Integer, sFileName As String
Dim sName As String, sValue As Integer
 
    sFileName = "C:\data.txt"
    iCount = Freefile
 
    ' Write data ( which we will read later with Input ) to file
    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
    ' Read data file using 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

Please support us!