读取存储在以逗号分隔的文本文件中的值,并在经典asp中逐个显示它们

时间:2011-12-20 12:00:25

标签: asp-classic

我有一个包含三个字段类别名称,图像名称和链接或URL的文本文件。这三个字段存储在以逗号分隔的文本文件中。我想读取文本文件值并逐列显示列格式。因此,所有类别名称将显示在一列中,图像名称显示在一列中,链接显示在一列中。

我已阅读文本文件,并在变量中获取文本文件中的所有内容。我在变量中获得的内容如下: glass,glassbowlcategory.jpg,www.google.com glass,glassbowlcategory.jpg,www.google.com glass bowl,images1.jpg,http://www.fitnessfirstusa.com/catalog.asp?Brand = LG%20Sciences

在上面的字符串中,第一个是类别名称,第二个是图像名称,第三个是链接。

我使用了以下代码来读取文本文件。

Sub BuildFileList(strFolder)

    Dim strFileName1

    Dim strSearchText

    Dim objFSO, objTextFile

    Dim strReadLineText

    Dim intLineNumber,strNewContents

    Dim strLineNumbers
    Dim objFile



    ' Name of text file to search:
    '
    'strFileName = "readme.txt"
    strFileName1 = "saveimagename.txt"

    Const ForReading = 1
    Const ForWriting = 2


    '' Create an instance of the the File System Object
    Set objFSO = CreateObject("Scripting.FileSystemObject")


    Set objTextFile = objFSO.OpenTextFile(Server.MapPath(strFileName1))
    intLineNumber = 0
    '
    strLineNumbers = ""
    Do While Not objTextFile.AtEndOfStream

       intLineNumber = intLineNumber + 1

        strReadLineText = objTextFile.ReadLine

          ' response.Write(strReadLineText)



           strNewContents = strNewContents & strReadLineText & vbCrLf

           response.Write(strNewContents)


    '
    Loop    

end sub

请告知我如何拆分变量中的内容并显示它们

2 个答案:

答案 0 :(得分:3)

表格数据

Const ForReading = 1
Const ForWriting = 2

Dim objTextFile
Dim intLineNumber, strNewContents, strReadLineText
dim data, columns

strFileName1 = "saveimagename.txt"

Set objTextFile = CreateObject("Scripting.FileSystemObject").OpenTextFile(Server.MapPath(strFileName1))
intLineNumber = 0
strLineNumbers = ""

data = split(objTextFile.readall(), vbcrlf)
for intLineNumber = 0 to ubound(data)
    columns = split(data(intLineNumber), ",", 3)
    if (ubound(columns) = 2) then
        strNewContents = strNewContents & "<tr><td>" & columns(0) & "</td><td>" & columns(1) & "</td><td>" & columns(2) & "</td></tr>" & vbcrlf
    end if
next

response.write "<table>" & strNewContents & "</table>"

答案 1 :(得分:1)

也许您可以使用Microsoft ActiveX数据库对象(ADO)吗?

这里有一些链接:

Much ADO about Text Files

Microsoft ODBC Desktop Database Drivers

和一些示例代码:

'http://msdn.microsoft.com/en-us/library/ms974559.aspx
dim conn : set conn = server.createObject("ADODB.Connection") 
dim rs : set rs = server.createObject("adodb.recordset")
dim sql

conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
      importPath & ";" &_
      "Extended Properties=""text;HDR=" & HDR & ";FMT=Delimited"""

sql = "SELECT * FROM " & myImportFile
rs.open sql, conn, adOpenStatic, adLockOptimistic, adCmdText