ASP CSV and ADO (Provider=Microsoft.Jet.OLEDB.4.0; Data Source) |
ASP CSV and ADO จากตัวอย่างที่แล้วจะเป็นการเขียน ASP อ่านไฟล์ CSV โดยใช้เครื่องหมาย Comma (,) ในการระบุ Column ของ Record แต่บางครั้งเราจะสังเกตุว่าบางข้อความจะมี Comma อื่น ๆ มาเกี่ยวข้องกับ Record ด้วยครับ เช่น Comma ของจำนวนเงิน หรือ ข้อความอื่น ๆ โดยเราจะใช้เครื่องหมาย Comma (,) และ Double Quote (") ในการแบ่งจำนวนของ Column และเกิดความลำบากในการอ่านข้อมูล ผมจึงแนะนำให้ใช้คำสั่งของ ADO เข้ามาจัดการแทนครับ
csv/customer.csv
CustomerID,Name,Email,CountryCode,Budget,Used
"C001","Win Weerachai","[email protected]","TH","1,000,000.00","600,000.00"
"C002","John Smith","[email protected]","EN","2,000,000.00","800,000.00"
"C003","Jame Born","[email protected]","US","3,000,000.00","600,000.00"
"C004","Chalee Angel","[email protected]","US","4,000,000.00","100,000.00"
ตัวอย่าง
AspAdoCSV.asp
<%Option Explicit%>
<html>
<head>
<title>ThaiCreate.Com ASP & Read CSV</title>
</head>
<body>
<%
Dim Conn,objRec,strSQL
Set Conn = Server.Createobject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("csv/")& "" & _
";Extended Properties='TEXT;HDR=Yes;FMT=Delimited;Format=Delimited(,)'"
strSQL = "SELECT * FROM customer.csv "
Set objRec = Conn.Execute(strSQL)
%>
<table width="600" border="1">
<tr>
<th width="91"> <div align="center">CustomerID </div></th>
<th width="98"> <div align="center">Name </div></th>
<th width="198"> <div align="center">Email </div></th>
<th width="97"> <div align="center">CountryCode </div></th>
<th width="59"> <div align="center">Budget </div></th>
<th width="71"> <div align="center">Used </div></th>
</tr>
<%
If Not objRec.EOF Then
objRec.MoveFirst
While Not objRec.EOF
%>
<tr>
<td><div align="center"><%=objRec.Fields(0).Value%></div></td> <!--objRec.Fields("CustomerID").Value -->
<td><%=objRec.Fields(1).Value%></td> <!--objRec.Fields("Name").Value -->
<td><%=objRec.Fields(2).Value%></td> <!--objRec.Fields("Email").Value -->
<td><div align="center"><%=objRec.Fields(3).Value%></div></td> <!--objRec.Fields("CountryCode").Value -->
<td align="right"><%=objRec.Fields(4).Value%></td> <!--objRec.Fields("Budget").Value -->
<td align="right"><%=objRec.Fields(5).Value%></td> <!--objRec.Fields("Used").Value -->
</tr>
<%
objRec.MoveNext
Wend
End IF
%>
<%
objRec.Close()
Conn.Close()
Set objRec = Nothing
Set Conn = Nothing
%>
</table>
</body>
</html>
Screenshot
Asp Excel บทความเกี่ยวกับการเขียน ASP กับ Microsoft Excel
|