用:就可以了oConn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq=c:\somepath\;" & _
"Extensions=asc,csv,tab,txt;" & _
"Persist Security Info=False"
"Dbq=c:\somepath\;" & _
"Extensions=asc,csv,tab,txt;" & _
"Persist Security Info=False"
Text 转换为 Access MDB
Text 文件类型在很多软件中都为一般应用程序与数据库之间架起一座桥梁。你可以使用 Text ISAM 驱动程序和 SQL 来把 Text 文件转换成 Access MDB 数据库文件,首先,为文本文件创建一个 SCHEMA.INI 文件。然后,你可以使用下面的代码来实现转换:
Dim db As Database, tbl as TableDef Set db = DBEngine.CreateDatabase(App.Path & "\mymdb.mdb", dbLangGeneral, dbVersion_0) Set tbl = db.CreateTableDef("Temp") tbl.Connect = "Text;database=c:\vbpj\data" tbl.SourceTableName = "Customer#txt" db.TableDefs.Append tbl db.Execute "Select Temp.* into NewTable from Temp" db.TableDefs.Delete tbl.Name db.Close Set tbl = Nothing Set db = Nothing
lihonggen0的方法,直接了当,很好! 下面的代码则是以数组方式读取文件内容,在特定场合也比较有用。Public data_array
Private Sub splict_line(xxx As String, j As Integer)
Dim k As Integer
Dim bb
bb = Split(xxx, ",")
For k = 0 To UBound(bb)
data_array(j, k) = bb(k)
Next
End SubPrivate Sub read_txtfile(fname As String)
Dim linestr As String
Dim i As Integer
Dim fso, ra, getline
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(fname)) Then
Set ff = fso.OpenTextFile(fname, 1, 0)
ra = ff.ReadAll
getline = ff.Line - 1
ff.Close
' sleep 1000
ReDim data_array(getline - 1, 10)
Set ff = fso.OpenTextFile("c:\data.txt", 1, 0)
For i = 0 To getline - 1
linestr = Trim(CStr(ff.ReadLine()))
Call splict_line(linestr, i)
Next i
ff.Close
End If
Set fso = Nothing
End SubPrivate Sub Command1_Click()
Call read_txtfile("c:\data.txt")
End Sub