Input 函数

更新:2007 年 11 月

从打开的顺序文件中读取数据并将数据分配给变量。

Public Sub Input( _
   FileNumber As Integer, _
   ByRef Value As Object _
)

参数

  • FileNumber
    必需。任何有效文件号。

  • Value
    必需。变量,从文件中读取的值将被赋给此变量,此变量不能为数组或对象变量。

异常

异常类型

错误号

条件

IOException

52

FileNumber 不存在。

IOException

54

文件模式无效。

如果正在升级使用非结构化错误处理方式的 Visual Basic 6.0 应用程序,请参见“错误号”一列。(您可以根据 Number 属性(Err 对象) 比较错误号。) 然而,如果可能,应当考虑用 Visual Basic 的结构化异常处理概述 替换这种错误控制。

备注

提供 Input 函数是为了实现向后兼容性,可能会影响性能。对于非旧式应用程序,My.Computer.FileSystem 对象将提供更好的性能。有关更多信息,请参见 使用 Visual Basic 访问文件

用 Input 读取的数据通常由 Write 写入文件。仅将此函数用于以 Input 或 Binary 模式打开的文件。

安全说明:

从文件读取数据时,请不要根据文件扩展名判断文件的内容。例如,名为 Form1.vb 的文件不一定就是 Visual Basic 源文件。

读取时,标准字符串或数值数据不做任何修改就赋给变量。下表阐释如何处理其他输入数据:

数据

赋给变量的值

分隔逗号或空行

#NULL#

DBNull

#TRUE# 或 #FALSE#

True 或者 False

#yyyy-mm-ddhh:mm:ss#

用表达式表示的日期和/或时间

#ERROR errornumber#

errornumber(变量是标记为错误的对象)

在输入数据项时,如果已到达文件尾,则会终止输入并产生错误。

说明:

Input 函数未本地化。例如,若在德语版中输入 3,14159,则只返回 3;因为在这里逗号被视为变量分隔符,而不是小数点。

安全说明:

使用 Input 函数读取文件时,要求具备 FileIOPermissionAccess 枚举指定的 Read 访问权限。有关更多信息,请参见 FileIOPermissionAccess 枚举

示例

本示例使用 Input 函数将数据从文件读入两个变量。本示例假定 TestFile 是用 Write 函数写入的带有几行数据的文件;也就是说,每一行都包含引在引号中的字符串和由逗号分隔的数字,例如,("Hello", 234)。

FileOpen(1, "TESTFILE", OpenMode.Output)
Write(1, "hello")
Write(1, 14)
FileClose(1)
Dim s As String = "teststring"
Dim i As Integer 
FileOpen(1, "TESTFILE", OpenMode.Input)
Input(1, s)
MsgBox(s)
Input(1, i)
MsgBox(i)
FileClose(1)

智能设备开发人员说明

不支持此函数。

要求

命名空间:Microsoft.VisualBasic

**模块:**FileSystem

**程序集:**Visual Basic 运行库(在 Microsoft.VisualBasic.dll 中)

请参见

任务

如何:在 Visual Basic 中向文件内写入文本

如何:在 Visual Basic 中使用 StreamWriter 向文件中写入文本

参考

InputString 函数

FileOpen 函数

Print、Printline 函数

Write、WriteLine 函数

其他资源

使用 Visual Basic 访问文件