'将指定目录下的文件名存入数组!! Dim strFileName As String '文件名称 Dim aryFileName() As String '文件名数组 Dim i As Integer strFileName = Dir("c:\roca\*.*") '这里改为你的路径! Do While strFileName <> "" i = i + 1 ReDim aryFileName(i) aryFileName(i) = strFileName '保存文件名 strFileName = Dir '得到下一个文件名 Loop
你要导入的文件只有一个一个地导入。以下是得到目录中的所有文件。 ----------------------------------------'注意引用microsoft scripting runtime对象 Private Sub Command3_Click() dim File as File Dim FSO As New FileSystemObject Dim Folder As Folder Set Folder = FSO.GetFolder("c:\") For Each file In Folder.Files MsgBox file.Name Next Set Folder = Nothing Set FSO = Nothing End Sub 以下是怎么将文件写入数据库中,楼主自己总结下即可。 ---------------------------------------------------------'一段精简的读写"大字段"的代码,使用 ADODB.Stream 'Objects: Form1、Picture1 '引用 Microsoft ActiveX Data Objects 2.5 Libary '或 Microsoft ActiveX Data Objects 2.6 Libary Dim TempFileName As StringTempFileName = App.Path & "\TempFile.tmp"Dim adoConnection As New ADODB.Connection Dim adoRecordset As New ADODB.Recordset adoConnection.Open "Driver={Microsoft ACCESS Driver (*.mdb)};DBQ=" & App.Path & "\mmxdb.mdb" adoRecordset.Open "SELECT * FROM bmp", adoConnection, adOpenKeyset, adLockOptimistic ', adCmdTableDebug.Print adoRecordset.Fields(1).Type '大字段adoRecordset.AddNew Dim adoStream As New ADODB.StreamadoStream.Type = adTypeBinary adoStream.Open adoStream.LoadFromFile CommonDialog1.FileName '将二进制文件写入大字段: adoRecordset.Fields.Item(1).AppendChunk adoStream.Read '================================ '从大字段读取二进制数据: adoStream.Write adoRecordset.Fields.Item(1).GetChunk(adoRecordset.Fields.Item(1).ActualSize) adoStream.SaveToFile TempFileName, IIf(Len(Trim(Dir(TempFileName, vbNormal + vbHidden))) > 0, adSaveCreateOverWrite, adSaveCreateNotExist) Picture1.AutoSize = True Picture1.Picture = LoadPicture(TempFileName)
然后存到数组,然后添加到commbox里。
Dim strFileName As String '文件名称
Dim aryFileName() As String '文件名数组
Dim i As Integer
strFileName = Dir("c:\roca\*.*") '这里改为你的路径!
Do While strFileName <> ""
i = i + 1
ReDim aryFileName(i)
aryFileName(i) = strFileName '保存文件名
strFileName = Dir '得到下一个文件名
Loop
如何能将文件中的文件名通过按钮导入ACCESS数据库中呢?
怎样才能做得到?期盼答复!谢谢答复!
----------------------------------------'注意引用microsoft scripting runtime对象
Private Sub Command3_Click()
dim File as File
Dim FSO As New FileSystemObject
Dim Folder As Folder
Set Folder = FSO.GetFolder("c:\")
For Each file In Folder.Files
MsgBox file.Name
Next
Set Folder = Nothing
Set FSO = Nothing
End Sub
以下是怎么将文件写入数据库中,楼主自己总结下即可。
---------------------------------------------------------'一段精简的读写"大字段"的代码,使用 ADODB.Stream
'Objects: Form1、Picture1
'引用 Microsoft ActiveX Data Objects 2.5 Libary
'或 Microsoft ActiveX Data Objects 2.6 Libary
Dim TempFileName As StringTempFileName = App.Path & "\TempFile.tmp"Dim adoConnection As New ADODB.Connection
Dim adoRecordset As New ADODB.Recordset
adoConnection.Open "Driver={Microsoft ACCESS Driver (*.mdb)};DBQ=" & App.Path & "\mmxdb.mdb"
adoRecordset.Open "SELECT * FROM bmp", adoConnection, adOpenKeyset, adLockOptimistic ', adCmdTableDebug.Print adoRecordset.Fields(1).Type '大字段adoRecordset.AddNew
Dim adoStream As New ADODB.StreamadoStream.Type = adTypeBinary
adoStream.Open
adoStream.LoadFromFile CommonDialog1.FileName
'将二进制文件写入大字段:
adoRecordset.Fields.Item(1).AppendChunk adoStream.Read
'================================
'从大字段读取二进制数据:
adoStream.Write adoRecordset.Fields.Item(1).GetChunk(adoRecordset.Fields.Item(1).ActualSize)
adoStream.SaveToFile TempFileName, IIf(Len(Trim(Dir(TempFileName, vbNormal + vbHidden))) > 0, adSaveCreateOverWrite, adSaveCreateNotExist)
Picture1.AutoSize = True
Picture1.Picture = LoadPicture(TempFileName)