69304
Mar 29, 2009, updated at 13:09:09 (UTC)
6016
2
0
Visual Basic 2008 Kopiert nur eine Datei aus ListBox-Inhalt anstatt alle
For-Schleife aus ListBox mit CopyFile()
Hallo!
Ich bin gerade dabei einen Datei Umbenenner zu basteln. Hab auch schon soweit alles fertig.
Zum Funktions-Prinzip
Verzeichnis wird ausgelesen und in ListBox ausgegeben, danach wird das Verzeichnis noch Mal eingelesen und über div. String-Replace-Routinen geschickt und in einer zweiten ListBox als "Vorschau" ausgegeben.
Das Problem ist, dass dann beim kopieren...
Vom Prinzip in DOS: copy dateialt.txt dateineu.txt
Mein Code dazu:
Das Problem ist nun, dass er immer nur die erste Datei des Verzeichnisses wie gewünscht kopiert.
Hat da wer ´ne Idee?
Gruß,
René.
P.S.: Wenn wir gerade dabei sind, alternativ würde es mir auch reichen, die Datei einfach nur umzubenennen. Move() geht leider nicht.
Ich bin gerade dabei einen Datei Umbenenner zu basteln. Hab auch schon soweit alles fertig.
Zum Funktions-Prinzip
Verzeichnis wird ausgelesen und in ListBox ausgegeben, danach wird das Verzeichnis noch Mal eingelesen und über div. String-Replace-Routinen geschickt und in einer zweiten ListBox als "Vorschau" ausgegeben.
Das Problem ist, dass dann beim kopieren...
Vom Prinzip in DOS: copy dateialt.txt dateineu.txt
Mein Code dazu:
Private Sub cmdDo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDo.Click
Dim DateinameAlt As String
Dim DateinameNeu As String
If lstDateien.Items(0).ToString() = "" And lstNeu.Items(0).ToString() = "" Then
MsgBox("Noch keine Vorschau ausgeführt!", MsgBoxStyle.OkOnly Or MsgBoxStyle.Critical)
Exit Sub
End If
For i As Integer = 1 To lblZaehler.Text Step 1
DateinameAlt = txtPfad.Text & "\" & lstDateien.Items(0).ToString()
DateinameNeu = txtPfad.Text & "\" & lstNeu.Items(0).ToString()
'Movefile(DateinameAlt, DateinameNeu)
My.Computer.FileSystem.CopyFile(DateinameAlt, DateinameNeu, True)
Next i
MsgBox("Fertig!", MsgBoxStyle.OkOnly Or MsgBoxStyle.Information)
End Sub
Das Problem ist nun, dass er immer nur die erste Datei des Verzeichnisses wie gewünscht kopiert.
Hat da wer ´ne Idee?
Gruß,
René.
P.S.: Wenn wir gerade dabei sind, alternativ würde es mir auch reichen, die Datei einfach nur umzubenennen. Move() geht leider nicht.
Please also mark the comments that contributed to the solution of the article
Content-Key: 112651
Url: https://administrator.de/contentid/112651
Printed on: April 20, 2024 at 04:04 o'clock
2 Comments
Latest comment
Hallo rbrixel!
Versuch es mit folgenden Zeilen 11 und 12
[Edit] Ergänzung:
Abgesehen davon gäbe es ja ohnehin die "RenameFile"-Methode, daher:
[/Edit]
Grüße
bastla
Versuch es mit folgenden Zeilen 11 und 12
DateinameAlt = txtPfad.Text & "\" & lstDateien.Items(i -1).ToString()
DateinameNeu = txtPfad.Text & "\" & lstNeu.Items(i-1).ToString()
Move() geht leider nicht.
Sollte es aber eigentlich:My.Computer.FileSystem.MoveFile(DateinameAlt, DateinameNeu, True)
My.Computer.FileSystem.RenameFile(txtPfad.Text & "\" & lstDateien.Items(i -1).ToString(), lstNeu.Items(i-1).ToString())
Grüße
bastla