Wie wähle ich automatisch eine Datei aus?
-
21-09-2019 - |
Frage
Mit VB6
Jetzt verwende ich in meiner Software eine Browse -Schaltfläche, um die Textdatei auszuwählen, und wird dann in MDB (Zugriff) konvertiert. Ich möchte die Textdatei nicht auswählen.
Sobald ich meine Software in jedem System installiert habe, sollte die Textdatei automatisch in einem bestimmten Pfad auswählen. Dann wandelt sich die Textdatei automatisch in MDB um. Einmal in MDB konvertiert
VB -Code zum Konvertieren von Text in MDB.
Dim db As Database, tbl As TableDef
Set db = DBEngine.OpenDatabase(App.Path & "\History.mdb")
Set tbl = db.CreateTableDef("Temp")
tbl.Connect = "Text;database=" & App.Path & "/ConvTemp/"
tbl.SourceTableName = strOutput & ".txt"
db.TableDefs.Append tbl
db.Execute "Select Temp.ID, Temp.IDTerminal, Temp.Reader, Temp.Date, Temp.Time, Temp.Cardnumber into " & strOutput & " from Temp"
db.TableDefs.Delete ("Temp")
db.Close
MsgBox strOutput
sql2 = "insert into events select * from " & strOutput & ""
If rs.State = 1 Then rs.Close
rs.Open sql2, Cn, adOpenStatic, adLockOptimistic
Set tbl = Nothing
Set db = Nothing
Oben Code funktioniert für Text zu MDB -Konvertierung. Aber ich muss die Textdatei automatisch konvertieren, ohne die Schaltfläche durch Browse zu verwenden.
Zum Beispiel
Mdb name ist - history.mdb und table name ist - event.mdb
Ich setze einen Weg wie diesen „C: NewFolder“ in meiner Software
Im obigen Ordner wird die Textdatei mit unterschiedlichen Namen angezeigt. Möglicherweise wird die Textdatei pro Tag 10 bis 20 Textdateien mit neuen verschiedenen Namen angezeigt. Ich kann den Text -Dateinamen auch nicht angeben. Ich muss nur die Erweiterung wie (*.txt) geben.
Sobald ich meine Software installiert habe, sollte die Software die Textdatei von C: Newfolder auswählen und dann automatisch in MDB konvertiert, nachdem die Textdatei die Textdatei automatisch gelöscht werden sollte.
Erwartete Ausgabe
Once I installed my software in any system, the software should select the text file from the specified folder, then the text file convert into mdb. Once converted, the text files automatically delete from the specified path.
Zum Konvertieren von Text in MDB AM habe ich den Code, um die Textdatei automatisch auszuwählen. Ich benötige einen Beispielcode oder eine Ideen
Ich bin neu bei VB6, kann jemand eine Idee geben, wie das geht. Oder kann irgendeiner Beispielcode für die automatische Auswahl der Textdatei veröffentlichen.
Bitte.
Lösung
Basic -Code würde in den Zeilen davon etwas hinschauen:
Dim filename As String
filename = Dir$("C:\NewFolder\*.txt", vbDirectory)
Do While filename <> ""
Debug.Print filename
'This line will delete the file as you asked
'but to make sure if the file has been converted to mdb
'is solely your code's responsibility
Kill "C:\NewFolder\" & filename
filename = Dir$
Loop
Der obige Code geht davon aus, dass Sie in Ihrem C: NewFolder nur *.txt -Dateien und keine anderen Dateien oder Ordner haben.
HTH