vbs逐行读取文本文件并用逗号分割

时间:2019-03-26 00:55:31

标签: vbscript line-by-line

有一个包含此内容的文本文件

  

名称1,21
  名称2,33
  名称4,22

例如,如何读取并存储在其他变量中

name= name1
age= 21

将其打印出来并循环直到文件结尾

将打印出

  

姓名:name1是21岁

这是我尝试过的方法,但收到的消息框为空

Const ForReading = 1 

Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objTextFile = objFSO.OpenTextFile("C:\my.txt", ForReading) 

strOutput = ""

Do Until objTextFile.AtEndOfStream 
    strNextLine = objTextFile.Readline 
    arrServiceList = Split(strNextLine , ";")

    If (UBound(arrServiceList) >= 6) Then
        strOutput = strOutput & "name: " & arrServiceList(0) & ", age: " & arrServiceList(6) & vbCrLf
    End If
Loop 

WScript.Echo strOutput

我所得到的只是一个空白框

1 个答案:

答案 0 :(得分:0)

最终设法使它起作用,只是共享,下面是我的代码:

Set fso=CreateObject("Scripting.FileSystemObject")
filename = "C:\my.txt"
listFile = fso.OpenTextFile(filename).ReadAll
listLines = Split(listFile, vbCrLf)

i = 0

For Each line In listLines
Dim arr
arr = Split(line,",")
WScript.Echo CStr(i) + " Name: " + arr(1)+ " age: "+arr(0)
Next

不确定这是否是最好的解决方案,有人会变得更好吗? 首先,我将其逐行拆分,然后从该行中以逗号进行拆分