.net ADODB.RecordSet不';t分隔CSV列

.net ADODB.RecordSet不';t分隔CSV列,.net,csv,vbscript,iis-7.5,adodb,.net,Csv,Vbscript,Iis 7.5,Adodb,我有一个VBScript,它使用ADODB.RecordSet获取分隔CSV文件的所有项。下面是一段脚本: Set rsSource = Server.CreateObject("ADODB.RecordSet") Set cnxExcel = CreateObject("ADODB.Connection") cnxExcel.Provider = "Microsoft.Jet.OLEDB.4.0" cnxExcel.ConnectionString = "Data Source=" &

我有一个VBScript,它使用
ADODB.RecordSet
获取分隔CSV文件的所有项。下面是一段脚本:

Set rsSource = Server.CreateObject("ADODB.RecordSet")
Set cnxExcel = CreateObject("ADODB.Connection")
cnxExcel.Provider = "Microsoft.Jet.OLEDB.4.0"
cnxExcel.ConnectionString = "Data Source=" & CheminSource & ";Extended Properties='Text;HDR=YES;FMT=Delimited'"
cnxExcel.Open
rsSource.Open "SELECT * FROM [" & Fichier & "]", cnxExcel, 3
If rsSource.EOF AND rsSource.BOF Then
  RecordSetVide = true
Else
  rsSource.MoveFirst
  NbColonne = 1         
  For Each adoFld in rsSource.Fields
    ReDim Preserve TabColonne(NbColonne)
    TabColonne(NbColonne) = adoFld.Name         
  Next
End If
问题是我得到了一个非分隔的输出,分号可见:

item1;item2;item3... 项目1;项目2;项目3。。。 而不是:

item1 item2 item3 ... 项目1 项目2 项目3 ... 该代码过去在II6(W2K)上运行良好,但当移到IIS7.5(W2008R2)时,似乎没有考虑分隔符。

引用自:

Microsoft Jet OLE DB 4.0 分隔列 可以在注册表中的以下位置指定分隔符:
HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Text

“格式”=“制表符分隔”


“格式”=“分隔(;)”


谢谢这解决了我的问题,但密钥不在您指定的路径中,而是:HKLM\Software\Wow6432Node\Microsoft\Jet\4.0\Engines\text那么您有一个64位系统。在报价中添加了64位环境中的JET链接。
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\txtFilesFolder\;
Extended Properties="text;HDR=Yes;FMT=Delimited";