Set FSO = CreateObject("Scripting.FileSystemObject")
Set Note = FSO.OpenTextFile("C:\VB Script Trying\textdata.txt", 1)
Do Until Note.AtEndOfStream
'Textline = Note.Readline()
WScript.Echo(VarType(Split(Note.Readline, " ")(1))) 'Dynamically Checked
Loop
上面的代码很简单,我从一个文件中读取并且必须在文本文件中显示每个单词/数字的数据类型。
这个内容:
( Hai 1.2 1000 a b c )
代码只运行“Hai”,它不会显示下一个单词或数字。
您的Split返回一个数组。你在这里选择基于零的数组的SECOND元素Split(Note.Readline, " ")(1)
并得到它的vartype。你实际上是在你的数组中获得你的1.2
的VarType ...所以不是每个元素,而不是Hai
上的第一个项目Split(Note.Readline, " ")(0)
要获取每个元素的vartype,然后迭代您的数组:
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Note = FSO.OpenTextFile("C:\VB Script Trying\textdata.txt", 1)
Do Until Note.AtEndOfStream
'Textline = Note.Readline()
For Each elem in Split(Note.Readline, " ")
WScript.Echo(elem & ": " & VarType(elem))
Next elem
Loop
这里的一个问题就是输入了一个数组,因为你没有声明这个数组,而是用Split()
函数将它变成一个字符串,它可能只是决定每个elem
的vartype是一个字符串,但我还没有测试过也许它会吐出预期的类型。