Hocam sen de çanak tutma istersen. Yazacağı olanı da engelliyorsun farkında mısın... Taraf değildim ama sen genelleyince lafın bize de uzanıyor ... İki satır kod bir şeydi de nasıl oldu da sonuca ulaşamadın ? Demek ki yazdığın kod da ezbere de ondan.
Forumda yeni de sayılmazsın aslında. Hayatta her zaman bir destekçin olmayacak. Bu da bir ders aslında.
Önce bir çözüme ilişkin bir kaç deneme yapmanı bekliyoruz biliyorsun. Sen de kendini ezilmiş gibi hissedeceğine, bir kaç satır kod yazma zahmetine girsen devamını hiç geri çevirmedik biliyor olman lazım bunları.
Senden de devam kod gelmeyince ne yapalım sen söyle ? Neyi yanlış anladığını nereden anlayacağız ? Verdiğin kod çalışıyor olduğu görünüyor. Her bir satırı noktalıvirgülden ayırıp elde ettiğin her satırı yeni bir alt / iç for döngüsü ile bu defa virgülle ayıramıyor olmanı anlayamıyorum. Çünkü kod yazarak for döngünü nerede yanlış kurduğunu bilemiyoruz.
Üstü örtülü sorular bu tip cevapları hak ediyor kusura bakma lütfen.
Biz de emrine amade kod yazmak için sırada bekleyen işi boş insanlar değiliz kabul edersin ki. Hiç bir şey yazmayıp akışına da bırakırdım son mesajından sonra bunları yazmasam olmazdı. Başlığa cevap yazanlardan şimdiden özür dilerim.
Soruna gelinde
@SimaWB cevabını çok güzel vermiş, değerlendirmeye almamışsın. Onun cevabına göre kod aşağıdaki şekilde. Lütfen inceleyip öğrenmeye çalış.
Kod: Tümünü seç
procedure TForm1.BitBtn1Click(Sender: TObject);
var
Str: String;
A, B : TStringList;
I, J : Integer;
begin
Str := 'Mersedes, Mustafa Yılmaz; Volvo, Nedim türk';
A := TStringList.Create;
B := TStringList.Create;
Try
A.Delimiter := ';';
A.StrictDelimiter := True;
A.DelimitedText := Str;
for I := 0 to (A.Count - 1) do //bu noktalıvirgüller
begin
with ListView1.Items.Add do
begin
Caption := IntToStr(ListView1.Items.Count);
B.Delimiter := ',';
B.StrictDelimiter := True;
B.DelimitedText := Trim( A[i] );
for j := 0 to (B.Count-1) do // bu da virgüller
begin
SubItems.Add( Trim(B[j]) );
end;
end;
end;
Finally
A.Free;
B.Free;
End;
end;