Delphi-Quellcode:
sl := TStringList.create();
try
sl.loadFromFile(FileName);
try
if sl.Count = 0
then
raise Exception.Create('
Die Playlist-Datei ist leer');
//format checken
if sl[0] = '
#EXTM3U'
then
begin
{ extended m3u playlist }
//durch alle einträge interieren
for i:=1
to sl.Count-1
do
begin
if copy(sl[i], 1, 8) <> '
#EXTINF:'
then
AddSongToPlayList(sl[i]);
end;
end
else
begin
{ standard m3u playlist }
for i:=0
to sl.count-1
do
begin
AddSongToPlayList(sl[i]);
end
else
raise Exception.Create('
Dies ist leider keine unterstützte Playlist-Datei');
end;
except
raise;
end;
finally
sl.free();
end;
in der prozedur AddSongToPlayList() wird der übergebene dateiname dann geladen. die prozedur behandelt relative und absolute dateinamen, sowie internetstreams,
UNC-netzwerkpfade und http-/
ftp-pfadangaben.
nur so als denkanstoß...
aeno