IBM Lotus Symphony


Instrução Input# [Runtime]

Lê dados a partir de um ficheiro sequencial aberto.

Sintaxe:

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

Parâmetros:

FileNumber: Número do ficheiro que contém os dados que pretende ler. O ficheiro tem de ser aberto com a instrução Open, utilizando a palavra-chave INPUT.

var: Uma variável numérica ou de cadeia à qual são atribuídos os valores lidos a partir do ficheiro aberto.

A instrução Input# lê valores numéricos ou cadeias a partir de um ficheiro aberto e atribui os dados a um ou mais variáveis. Uma variável numérica é lida até ao primeiro retorno de linha (Asc=13), mudança de linha (Asc=10), espaço ou vírgula. As variáveis de cadeia são lidas até ao primeiro retorno de linha (Asc=13), mudança de linha (Asc=10) ou vírgula.

Os dados e tipos de dados no ficheiro aberto têm de ser apresentados pela mesma ordem das variáveis passadas no parâmetro "var". Se atribuir valores não numéricos a uma variável numérica, "var" é atribuído a um valor de "0".

Os registos que são separados por vírgulas não podem ser atribuídos a uma variável de cadeia. As aspas (") no ficheiro são igualmente ignoradas. Se pretender ler estes caracteres a partir do ficheiro, utilize a instrução Line Input# para ler ficheiros de texto puro (ficheiros que contêm apenas caracteres imprimíveis), linha a linha.

Se o final do ficheiro for alcançado durante a leitura de um elemento de dados, ocorre um erro e o processo é interrompido.

Exemplo:

Sub ExampleWorkWithAFile

Dim iNumber As Integer

Dim sLine As String

Dim aFile As String

Dim sMsg as String

aFile = "c:\data.txt"

iNumber = Freefile

Open aFile For Output As #iNumber

Print #iNumber, "This is a line of text"

Print #iNumber, "This is another line of text"

Close #iNumber

iNumber = Freefile

Open aFile For Input As iNumber

While not eof(iNumber)

Line Input #iNumber, sLine

If sLine <>"" then

sMsg = sMsg & sLine & chr(13)

end if

wend

Close #iNumber

Msgbox sMsg

End Sub


Comentários sobre o produto | Documentação adicional | Marcas comerciais