VB6逗号分隔CSV文件
我试图分离一个以逗号分隔的文件,但由于某种原因,我似乎没有得到预期的输出 代码如下:VB6逗号分隔CSV文件,vb6,file-io,csv,Vb6,File Io,Csv,我试图分离一个以逗号分隔的文件,但由于某种原因,我似乎没有得到预期的输出 代码如下: strCSVPath = "E:\cfaApp\tester.csv" int77 = FreeFile Open strCSVPath For Input As #int77 Do Until EOF(int77) Input #int77, strName, intHours, strMon, strTue, strWed, strThu, strFri, strSat Debug.Pri
strCSVPath = "E:\cfaApp\tester.csv"
int77 = FreeFile
Open strCSVPath For Input As #int77
Do Until EOF(int77)
Input #int77, strName, intHours, strMon, strTue, strWed, strThu, strFri, strSat
Debug.Print strName & vbCr & intHours
'Debug.Print strName & vbCr & intHours & vbCr & strMon & vbCr & strTue & vbCr & strWed & vbCr & strThu & vbCr & strFri & vbCr & strSat & vbCr
Loop
输出如下所示:
1.0-Store Manager (1 Employee)
11:00 AM-8:30 PM
10:00 AM-7:30 PM
1.1-Assistant Managers
Wood, Chris
以上输出是错误的。这是CSV文件(部分,而不是全部)
如您所见,输出确实跳过了Pro和Bob。然后在展示木头之前跳过Crow和Ras
我还得到了一个错误
Input past end of file
简而言之,输入#不是为读取CSV而设计的。看
可能有一个外部CSV解析器可以从VB6中使用,但我现在还不知道。您可以很容易地编写一个CSV解析器,一次只获取一个字符,并使用有限状态机。我已经有一段时间没有使用VB6了,但我碰巧记得可以使用
ADODB.Recordset
对象来解析
这里是,包括如何。尝试使用其他分隔符,如;或管道。 然后看看输出是否正常。 如果是,请尝试在名称中引用逗号,或在其他引号中设置名称,如' 玩得高兴
约翰你能举例说明你的答案吗?(也欢迎使用Stack Overflow!)单行回答不是好答案。请发布代码或给出详细解释。CSV文件是包含以“,”或“;”分隔的数据的文件。在本例中,用“,”分隔。数据文件中的“LastName,Firstname”部分也包含一个com my”。这可能会因为重新拨号而导致问题。
Input past end of file