Command line Microsoft VBScript运行时错误:输入超过文件结尾错误

Command line Microsoft VBScript运行时错误:输入超过文件结尾错误,command-line,vbscript,Command Line,Vbscript,我得到这个错误: C:\se2.vbs(28,6)Microsoft VBScript运行时错误:输入超过文件结尾 当我运行脚本时(我将第28行斜体化): 如果InStr(of so.OpenTextFile(path).ReadAll,strearchfor)>0,那么 救命啊!谢谢 其中一个文件的大小似乎为零。证据: Option Explicit Const ForReading = 1 Dim goFS : Set goFS = CreateObject("Scripting.Fil

我得到这个错误:

C:\se2.vbs(28,6)Microsoft VBScript运行时错误:输入超过文件结尾

当我运行脚本时(我将第28行斜体化):

如果InStr(of so.OpenTextFile(path).ReadAll,strearchfor)>0,那么


救命啊!谢谢

其中一个文件的大小似乎为零。证据:

Option Explicit

Const ForReading = 1

Dim goFS : Set goFS = CreateObject("Scripting.FileSystemObject")

Dim oFile
For Each oFile In goFS.GetFolder("..\data\26878933").Files
    WScript.Echo oFile.Path, oFile.Size
    WScript.Echo oFile.OpenAsTextStream(ForReading).ReadAll()
    WScript.Echo "------"
Next
输出:

cscript 26878933.vbs
..\data\26878933\a.txt 3
a

------
..\data\26878933\b.txt 0
26878933.vbs(10, 5) Microsoft VBScript runtime error: Input past end of file

我发现了问题。脚本在空白文本文件中搜索字符串时出错。我尝试添加以下内容:

IF oFSO.GetFile(path).size <> 0 then    

    'Process text file then search for string.

END IF
IF of so.GetFile(path).size 0则
'处理文本文件,然后搜索字符串。
如果结束

在“objStartFolder”下面有文件夹吗?代码假定“objStartFolder”下只存在数据文件。如果文件夹存在,代码将尝试打开一个路径,而不将文件部分作为文本文件。例如,oFSO.OpenTextFile(“C:\Program Files\Apache Software Foundation\Tomcat 7.0\u Tomcat7\u 1010\webapps\Geniisys\someSubDir\”)可能会发出相同的错误消息。您好,Fumu 7,我尝试了您的建议,即使扫描了没有文本文件的文件夹,代码也能正常工作。谢谢你的帮助!你好是的,这确实是个错误!我刚发现。谢谢你的帮助。我把这个if语句捕获到空白文本文件:<代码>如果OFS.GETFILE(PATH)。大小0,然后处理文本文件,然后搜索字符串。如果
cscript 26878933.vbs
..\data\26878933\a.txt 3
a

------
..\data\26878933\b.txt 0
26878933.vbs(10, 5) Microsoft VBScript runtime error: Input past end of file
IF oFSO.GetFile(path).size <> 0 then    

    'Process text file then search for string.

END IF