Seek 函数

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

注意: 如果 Microsoft Jet 表达式服务运行在沙盒模式下,可防止潜在不安全的表达式的求值,则禁用函数、 方法、 对象或本主题中介绍的属性。沙盒模式的详细信息,"沙盒模式"中搜索帮助。

返回一个 Long 的值,指定使用Open语句打开的文件中读取/写入当前位置。

语法

Seek ( filenumber )

需要的filenumber参数是一个包含有效的文件编号的整数。

备注

Seek返回 1 和 2147483647 之间的值 (等于 2 ^31-1),包括。

下面介绍了每个文件访问模式的返回值。

模式

返回值

随机

读或写下一条记录的数量

二进制
输出
追加
输入

字节发生下一步操作的位置。在文件中的第一个字节位于位置 1,第二个字节在位置 2,等等。


示例

注意: 下面的示例说明使用此函数在 Visual Basic for Applications (VBA) 模块。有关处理 VBA 的详细信息,搜索旁边的下拉列表中选择开发人员参考,然后在搜索框中输入一个或多个条款。

此示例使用Seek函数返回当前文件位置。示例假定TESTFILE包含用户定义类型Record的记录的文件。

Type Record    ' Define user-defined type.
ID As Integer
Name As String * 20
End Type

对于在随机模式下打开的文件, Seek将返回下一条记录的数。

Dim MyRecord As Record    ' Declare variable.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
Do While Not EOF(1) ' Loop until end of file.
Get #1, , MyRecord ' Read next record.
' Print record number to the Immediate window.
Debug.Print Seek(1)
Loop
Close #1 ' Close file.

对于模式以外随机模式下打开文件, Seek返回发生下一步操作的字节位置。假定TESTFILE文件包含几行的文本。

Dim MyChar
Open "TESTFILE" For Input As #1 ' Open file for reading.
Do While Not EOF(1) ' Loop until end of file.
MyChar = Input(1, #1) ' Read next character of data.
' Print byte position to the Immediate window.
Debug.Print Seek(1)
Loop
Close #1 ' Close file.

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×