Einzelnen Beitrag anzeigen

Lordnightmaere

Registriert seit: 28. Jan 2004
14 Beiträge
 
Delphi 5 Standard
 
#1

ID3Tag einer String-Variable zuweisen

  Alt 31. Jan 2004, 23:12
Hallöchen...

Habe hier folgendes Szenario:

Delphi-Quellcode:

...

type
  TID3Tag = Record
    ID: String[3];
    Titel: String;
    Artist: String;
    Album: String;
    Year: String;
    Comment: String;
    Genre: Byte;
  end;

...

function ReadID3Tag(FileName: String): TID3Tag;
var
  FS: TFileStream;
  Buffer: Array [1..128] of Char;
begin
  FS := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
  try
    FS.Seek(-128, soFromEnd);
    FS.Read(Buffer, 128);
    with Result do
    begin
      ID := Copy(Buffer, 1, 3);
      Titel := Copy(Buffer, 4, 30);
      Artist := Copy(Buffer, 34, 30);
      Album := Copy(Buffer, 64, 30);
      Year := Copy(Buffer, 94, 4);
      Comment := Copy(Buffer, 98, 30);
      Genre := Ord(Buffer[128]);
    end;
  finally
    FS.Free;
  end;
end;

...

procedure TForm1.Button1Click(Sender: TObject);
var
  S: String;
begin
  with ReadID3Tag('c:\lied.mp3') do
  begin
    S := Artist + ' - ' + Titel;
  end;
end;

...
So... Wenn ich das ganze jetzt so laufen lasse steht in der Variable S nur der Artist. Der Bindestrich und der Titel fehlen. Einem Label kann ich das so auch nicht zuordnen. Folgender Code funktioniert wiederrum:

Delphi-Quellcode:

...

procedure TForm1.Button1Click(Sender: TObject);
var
  S: String;
begin
  with ReadID3Tag('c:\lied.mp3') do
  begin
    Label1.Caption := Artist;
    Label2.Caption := Titel;
    S := Label1.Caption + ' - ' + Label2.Caption;
  end;
end;

...
Wie kann ich der Variable S ohne diesen Umweg das ganze zuweisen?


mfg

~Lordnightmaere~
  Mit Zitat antworten Zitat