Autor |
Beitrag |
Bountyhunter
      
Beiträge: 19
|
Verfasst: Sa 19.10.02 18:05
hallo!
ich hoffe das ist die richtige sparte. also, ich möchte, dass alle mp3 dateien in einer playlist in einen ordner kopiert werden. wenn man die playlist per editor öffnet, dann ist jede 2. zeile der dateiname. wie mach ich so ungefähr (ich kenn mich schon etwas aus) dass also diese dateinamen gelesen werden und die dateien dann in einen ordner meiner wahl kopiert werden?
mfg
Bountyhunter
|
|
AndyB
      
Beiträge: 1173
Erhaltene Danke: 14
RAD Studio XE2
|
Verfasst: Sa 19.10.02 18:41
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| var List: TStrings; begin List := TStringList.Create; try List.LoadFromFile(Dateiname); List.Delete(0); // '#EXTM3U' Zeile entfernen // jede 1. Zeile entfernen und jede 2. stehen lassen for i := List.Count - 1 downto 0 do if i mod 2 = 0 then List.Delete(i);
DateilisteVerarbeiten(List); finally List.Free; end; end; |
_________________ Ist Zeit wirklich Geld?
|
|
Bountyhunter 
      
Beiträge: 19
|
Verfasst: Sa 19.10.02 21:39
Hallo!
erst mal danke, das is schon sehr gut. nur habe ich doch noch eine frage und zwar wie kopiere ich nun die files? mit copyfile heisst es immer incompatible types TStringlist and Pchar und Strings and TstringList und natürlich String and PChar. was mach ich da am besten?
danke
Bountyhunter
|
|
DeCodeGuru
      
Beiträge: 1333
Erhaltene Danke: 1
Arch Linux
Eclipse
|
Verfasst: Sa 19.10.02 21:41
du kannst eine Zeile der Stringlist folgendermaßen in PChar umwandeln:
Quelltext 1:
| PChar(List[12]) //der Wert in den [] gibt die Zeilennummer an |
ich denke mal, dass dir das hilft.
_________________ Viele Grüße
Jakob
|
|
AndyB
      
Beiträge: 1173
Erhaltene Danke: 14
RAD Studio XE2
|
Verfasst: Sa 19.10.02 21:50
DeCodeGuru hat folgendes geschrieben: | der Wert in den [] gibt die Zeilennummer an |
Wobei die 1. Zeile den Index 0 (Null) hat, die 2. den Index 1, ...
_________________ Ist Zeit wirklich Geld?
|
|
Bountyhunter 
      
Beiträge: 19
|
Verfasst: Sa 19.10.02 22:36
das wäre die lösung!
nur wenn ich PCHar(List[?]) schreibe, dann heisst es nur statement expected but expression of Pchar found egal wo ich den text hinschreibe.
wahrscheinlich hab ich da was falsch verstanden. also, was muss ich tun?
mfg
Bountyhunter
|
|
DeCodeGuru
      
Beiträge: 1333
Erhaltene Danke: 1
Arch Linux
Eclipse
|
Verfasst: Sa 19.10.02 22:42
wenn du mit CopyFile Dateien kopieren willst, könnteste das so machen (habe kein Delphi installiert  nicht getestet):
Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| var i: Integer; begin for i := 0 to 9 do begin CopyFile(PChar(Liste[i]), 'C:\Temp\' + ExtractFileName(Liste[i]),False); end; end; |
Liste ist in dem Fall eine Stringlist mit Pfäden.
Müsste eigentlich funktionieren. Wenn nicht, frag nochmal oder sags mir 
_________________ Viele Grüße
Jakob
|
|
Bountyhunter 
      
Beiträge: 19
|
Verfasst: Sa 19.10.02 23:08
Titel: Danke!
ha!
danke, funzt super!!! ihr seit super!!! ein kleiner fehler war noch:
Quelltext 1:
| CopyFile(PChar(Liste[i]), PChar('C:\Temp\' + ExtractFileName(Liste[i])),False); |
ach ja, das würde ich auch ändern (aber das war ja auch unwichtig):
Quelltext 1:
| for i := 0 to List.Count-1 do |
mfg
Bountyhunter[/code]
|
|
DeCodeGuru
      
Beiträge: 1333
Erhaltene Danke: 1
Arch Linux
Eclipse
|
Verfasst: Sa 19.10.02 23:16
oh ja, das PChar beim zweiten Parameter hatte ich wirklich vergessen.  Naja, hauptsache es funtzt jetzt 
_________________ Viele Grüße
Jakob
|
|