Módulo
Contenido
Índice 🔎︎

# Instrucción Input#

Lee datos de un archivo secuencial abierto.

## Sintaxis:

Input #NúmeroArchivo As Integer; var1[, var2[, var3[,...]]]

## Parámetros:

NúmeroArchivo: Número del archivo que contenga los datos que se desee leer. El archivo debe estar abierto con la instrucción Open mediante la palabra clave INPUT.

var: Una variable numérica o de cadena que a la que se asignan los valores leidos del archivo abierto.

La instrucción Input# lee valores numéricos o cadenas de un archivo abierto y asigna los datos a una o más variables. Una variable numérica se lee hasta el primer retorno de carro (Asc=13), avance de línea (Asc=10), espacio o coma. Las variables de cadena se leen hasta el primer retorno de carro (Asc=13), avance de línea (Asc=10) o coma.

Los datos y los tipos de datos del archivo abierto deben aparecer en el mismo orden que las variables que se pasan en el parámetro "var". Si asigna valores no numéricos a una variable numérica, se asigna a "var" un valor igual a "0".

Los registros separados por comas no pueden asignarse a una variable de cadena. Las comillas (") del archivo también se descartan. Si se desea leer estos caracteres del archivo, use la instrucción Line Input# para leer archivos de texto puros (archivos que contienen sólo caracteres imprimibles) línea a línea.

Si se llega al final del archivo mientras se lee un elemento de datos, se produce un error y el proceso se interrumpe.

## Ejemplo:

    Sub ExampleWorkWithAFile

    Dim iCount As Integer

    Dim sName As String

    Dim sValue As Integer

    Dim sFileName As String

    sFileName = "c:\data.txt"

    iCount = Freefile

    ' Escribir datos (que leeremos posteriormente con Input) en el archivo

    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

    ' Leer archivo de datos mediante 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