经典ASP - 如何保存逗号在解析CSV文件(Classic ASP - How to prese

2019-10-21 19:14发布

场景

4列,ID,PARENTID,类别,OrderNo和类别中可以有逗号,例如“销售经理”或“HR,招聘”,所以我将不得不处理,如果不能够知道的话有他们周围的报价为他们使用不那么我需要处理与奇数逗号行,然后把这些行为的人与类之间用逗号里面所以这是一个有点复杂的文件。

Answer 1:

我个人使用微软文本驱动程序来解析CSV文件,使得与数据打交道容易得多。

首先创建一个text.dsn文件,并在你的web应用程序的地方保存(在本例中,我会承担其在CSV文件所在)

[ODBC]
DRIVER=Microsoft Text Driver (*.txt; *.csv)
UID=admin
UserCommitSync=Yes
Threads=3
SafeTransactions=0
PageTimeout=5
MaxScanRows=25
MaxBufferSize=512
ImplicitCommitSync=Yes
FIL=text
Extensions=txt,csv,tab,asc
DriverId=27

然后把它作为一个正常的数据库连接如:

strPath = server.mappath("/csv/")
sDSNFile = "text.dsn"
strCSVFile = "test.csv"

sDSN = "FileDSN=" & strPath & sDSNFile & ";DefaultDir=" & strPath & ";DBQ=" & strPath & ";"
Set Conn = CreateObject("ADODB.Connection")
Conn.Open sDSN
sql = "SELECT * FROM [" & strCSVFile & "]"

set rs = conn.execute(sql)

do until rs.eof
    id = rs("ID")
    ParentID = rs("ParentID")
    Category = rs("Category")
    OrderNo = rs("orderno")
    ' do something cool here
loop

这样,您就可以拉说,所有的开发人员使用标准的SQL

sql = "SELECT * FROM [" & strCSVFile & "] where Category='Developer'"

希望这可以帮助。

PS。 如果你没有安装它,我觉得文字驱动程序包含为M的一部分icrosoft Access数据库引擎可再发行 ,但它已经有一段时间,可能是错误的:)



文章来源: Classic ASP - How to preserve commas while parsing a CSV file