Nicht schnell, aber schnell implementiert: Anlegen einer Stringliste mit StrictDelimiter auf true und Delimiter auf '#', DelimitedText zuweisen und alle leeren Zeilen löschen. Anschließend String an Index 0 der Caption des ListItems zuweisen, Index 0 löschen und dann SubItems die Stringliste zuweisen.
[edit] @Günther: Delimiter ist ein Char und kein String, leider [/edit]
[edit2] Noch einfacher:
Delphi-Quellcode:
procedure TForm24.Button1Click(Sender: TObject);
const
MyText = 'Name1###Name2###Name3';
var
sl: TStringlist;
Item: TListItem;
begin
sl := TStringlist.Create;
try
sl.Text := StringReplace(MyText, '###', sLineBreak, [rfReplaceAll]);
if sl.Count > 0 then
begin
Item := ListView1.Items.Add;
Item.Caption := sl[0];
sl.Delete(0);
Item.SubItems.Assign(sl);
end;
finally
sl.Free;
end;
end;
[/edit2]