Einzelnen Beitrag anzeigen

Benutzerbild von robinWie
robinWie

Registriert seit: 26. Okt 2005
Ort: Lippcity
404 Beiträge
 
Delphi 2005 Personal
 
#1

PLS Playlisten speichern und öffnen

  Alt 6. Apr 2006, 18:09
Hallo,
Ich habe ich mir mal Funktionen für das Speichern und Öffnen Playlist im .pls Format geschrieben.
Ich denke die kann sicher jemand brauchen

Delphi-Quellcode:
uses {...} ,IniFiles;
//...
function OpenPLS(const FileName: string; var Playlist: TStringList): Boolean;
var
 PLS: TIniFile;
 i,c: integer;
 File_N: string;
begin
  Playlist:=TStringList.Create;
  try
  //Datei oeffnen
   PLS:=TIniFile.Create(FileName);

  //Anzahl der Dateien auslesen
   c:=PLS.ReadInteger('playlist','NumberOfEntries',-1);

  //Dateien in die Stringliste eintragen
   for i:=1 to c do
    begin

     //Dateinamen auslesen
     File_N:=PLS.ReadString('playlist','file'+IntToStr(i),'');

     //Datei auf Gültigkeit überprüfen
     if FileExists(File_N) then

      //Wenn Datei existiert Datei Hinzufuegen
      Playlist.Add(File_N);

    end;
   Result:=True;

  //Beim Fehler "False" ausgeben
  except
   Result:=False;
  end;

  //Speicher Freigeben
  PLS.Free;
end;

function SavePLS(const FileName: string; Playlist: TStringList): Boolean;
var
  PLS: TIniFile;
  i: integer;
  File_N: string;
begin
  //Ueberpruefen ob die Playlisten "verbunden" sind
  if not Assigned(Playlist) then
   begin
    Result:=False;
    Exit;
   end;
  try

    //Datei erstellen
    PLS:=TIniFile.Create(FileName);

    //Anzahl der Dateien schreiben
    PLS.WriteInteger('playlist','NumberOfEntries',Playlist.Count-1);

    //Dateien schreiebn
    for i:=1 to Playlist.Count-1 do
     begin

      //Gesamten Dateinamen schreiben
      PLS.WriteString('playlist','file'+IntToStr(i),Playlist.Strings[i]);

      //Dateinamen Extrahieren und schreiben
      File_N:=ExtractFileName(Playlist.Strings[i]);
      PLS.WriteString('playlist','title'+IntToStr(i),File_N);
     end;
  Result:=True;

  //Beim Fehler "False" ausgeben
  except
    Result:=False;
  end;

  //Speicher Freigeben
  PLS.Free;
end;
Robin W.
Ein Computer kann (fast) alles.... Man muss es ihm nur beibringen
  Mit Zitat antworten Zitat