![]() |
Umbenennen von Musikdateien mittels ID3 Tag
Hallo,
ich hoffe ihr könnt mir helfen.Ich habe ein Programm geschrieben, dass über einen ID3 Tag die Datei umbenennt. In meinen Fall wird die Datei in den Titel umbenannt.Dafür werden die Dateien in eine Listbox hinzugefügt und dann der Reihe nach abgearbeitet.Das funktioniert bei einer Datei. Wenn ich aber mehrere Dateien hinzufüge kommt der Fehler der Klasse EFOpenError. Das System kann den Pfad des alten (noch nicht umbenannten) Dateinamen nicht mehr finden.:? Hier ist mein Quelltext:
Delphi-Quellcode:
Es wäre gut, wenn ich wüsste wie die Listbox die abgearbeiteten Einträge löscht und zum nächsten Eintrag springt.
procedure TfrmMain.Button3Click(Sender: TObject);
var I: integer; F: TextFile; begin OpenDialog1.Options := [ofAllowMultiSelect]; OpenDialog1.Filter := 'MP3Dateien (*.mp3)|*.mp3|Alle Dateien(*.*)|*.*'; OpenDialog1.FilterIndex := 2; if OpenDialog1.Execute then with OpenDialog1.Files do for I := 0 to Count - 1 do begin ListBox1.Items.add(OpenDialog1.Files.Strings[I]); with readID3Tag(OpenDialog1.FileName) do begin LlbID.Caption := 'ID: ' + ID; LlbTitel.Caption := Titel; LlbArtist.Caption := 'Artist: ' + Artist; LlbAlbum.Caption := 'Album: ' + Album; LlbYear.Caption := 'Year: ' + Year; LlbComment.Caption := 'Comment: ' + Comment; SaveDialog1.Title := 'Umbenennen zu'; SaveDialog1.FileName:=LlbTitel.Caption ; AssignFile(f, OpenDialog1.FileName); Label1.Caption:='Umbenennen ' + OpenDialog1.FileName + ' zu ' + SaveDialog1.FileName+'.'+ SaveDialog1.DefaultExt; Rename(f, SaveDialog1.FileName+'.mp3'); Vielen Dank |
AW: Umbenennen von Musikdateien mittels ID3 Tag
Du benutzt die mit den MP3-Dateien gefüllte Listbox nicht weiter in der Schleife, sondern versuchst immer wieder dieselbe Datei zu öffnen:
Delphi-Quellcode:
Ist das beabsichtigt? Wahrscheinlich nicht, oder? Innerhalb der Schleife musst du weiter mit Files.Strings[I] arbeiten.
with readID3Tag(OpenDialog1.FileName) do
Dann ist die Listbox völlig überflüssig. |
AW: Umbenennen von Musikdateien mittels ID3 Tag
Kennst du das Programm mp3tag?
![]() Das kann so ziemlich alles und du brauchst das Rad nicht neu "programmieren". |
AW: Umbenennen von Musikdateien mittels ID3 Tag
Danke für eure Antworten,
das
Delphi-Quellcode:
war natürlich nicht beabsichtigt. Wie muss ich nun den Quelltext vervollständigen das es funktioniert?
with readID3Tag(OpenDialog1.FileName) do
Ich würde mich über weitere Antworten freuen. |
AW: Umbenennen von Musikdateien mittels ID3 Tag
Was soll der SaveDialog eigentlich machen? Du rufst ihn nicht auf (ich sehe in dem Codeteil kein "Execute"), sondern schreibst nur auf Umwegen einen Dateinamen da rein und liest ihn wieder aus, bevor du mit Rename den ersten Dateinamen umbenennst.
Kann es sein, dass du versucht hast, mehrere Codestücke zu kombinieren, ohne sie anzupassen? |
AW: Umbenennen von Musikdateien mittels ID3 Tag
Hier geht' s weiter:
![]() |
AW: Umbenennen von Musikdateien mittels ID3 Tag
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz