я додумался сделать вот так, теперь все работает как надо
Код:

procedure TForm1.Button2Click(Sender: TObject);
var
SL,st: TStringList;
i: Integer;
begin
SL := TStringList.Create;St := TStringList.Create; st.Delimiter:='|';
try
SL.LoadFromFile(edit1.text);
i := 0;
while i < SL.Count do
begin st.DelimitedText:=SL[i];
with ListView1.Items.Add do
begin
Caption := St[0];
SubItems.Add(St[1]);
SubItems.Add(St[2]);
end;
Inc(i, 1);
end;
finally
SL.Free;
st.free;
end;
end;
остается один вопрос, как все это дело сохранять в текстовик такой же формы?