memo nesnesindeki filed ları satır satır kaydetme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
argetek
Üye
Mesajlar: 27
Kayıt: 15 Kas 2005 01:01

memo nesnesindeki filed ları satır satır kaydetme

Mesaj gönderen argetek »

arkadaslar oncelikle yardımlarınızdan dolayı cok cok tesekkur ederim sayenizde bircok handikapda kalan işlerimi hallettim şu an bir sorunum var bunu nasıl aşıcağım hakkında engin bilgilerinize ihtiyacım var sorun su arkadaslar bir txt dosyayı memo nesnesine yukluyorum sonra bu memo nesnesinden ilk satırı okuyarak bunu bir string içine alarak parcalıyorum daha sonra bu parcaladıgım bilgileride bir xml dosyasına yazıyorum şimdi sorun su yuklemiş oldugum txt dosyasının her yukleme esnasında satır sayısı surekli olarak değişiyor şimdi ben bir kerede bir dongu ile (X) kadar satır oldugunu memmo.count ile buluyorum ama nasıl bir cod ile su kadar satırı su string yukle daha sonrada bu stringden baska bi txt ye sadece parcaladıgım bu satırları sırası ile yukle derim ?

bu konu hakkında acil yardımlara ihtiyacım var arkadaslar
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

Memo1.Lines[2] := 'yazi1';
Memo1.Lines[5] := 'yazi2';
DeveloperToolKit

..::|YeşilMavi|::..
argetek
Üye
Mesajlar: 27
Kayıt: 15 Kas 2005 01:01

memo

Mesaj gönderen argetek »

bu sekilde tum satırları tek tek stringe mi işle diyorsun pek anlaşılmıyor açıkcası biraz daha acık bi şekilde yazabilirseniz cok sevinirim birde şunu belirtme de fayda goruyorum memo dakı satır sayısı her yukleme es nasında değişiyor ve benim bu satırların hepsini tek seferde satır satır almam lazım !
Kullanıcı avatarı
lazio
Moderator
Mesajlar: 1527
Kayıt: 11 Tem 2003 04:55
Konum: İstanbul

Mesaj gönderen lazio »

benim yazdığım kod mantığı göstermek içindi.
sen göndü içinde zaten count un nerde kaldığını anlayabilirsin.
örneğin 10 tane satır varsa text de sen ilk 5 ini yazdırsan memo ya, 5 te kaldığını bi değişkende tut ve daha sonraki işlemde 5 ten başla..
konuyu yanlışmı anladım acaba :roll:
DeveloperToolKit

..::|YeşilMavi|::..
Kullanıcı avatarı
hbahadir
Kıdemli Üye
Mesajlar: 544
Kayıt: 06 Ara 2004 05:03
Konum: BURSA idi artık İST.
İletişim:

Mesaj gönderen hbahadir »

Delphi helpinde Working with string lists konusunu okumanızı tavsiye ederim.
argetek
Üye
Mesajlar: 27
Kayıt: 15 Kas 2005 01:01

memo

Mesaj gönderen argetek »

evet bence yanlıs anladın sanırım şimdi ben sana detaylı bir şekilde anlatayım asıl sorun ben anlatamadım sanırım sorunu :)

memo içerisine bir txt dosyayı loadfromfile metodu ile upload ettim ve memo bileşenimde var olan satıs şu şekilde oluyor

------------------------------------------------------------------------------------
232323;hggjggsdhjgfjdgfhjdgf
2322;hgdhfgdjhgfjghfjdgfdgfhjs
2323232;dhgfjdhdjhjhjfhjshshjsjfs<hfd


gibi satırlar oldu ben bunun içerisinden pos ve copy ile [;] un yerini bulup [;] e kadar olan numaraları alıyorum ve [;] den itibaren saga dogru 159 karakteride bir edit nesnesine atıyorum daha sonra aldıgım bu no ve msg kısımlarını bir xml dosyaya işliyorum ama memodaki tum satırlara aynı işlemi yapmam lazım bunu bir dongu içerisinde nasıl yapabilirim asıl yapmak istedigim su memo da bulunan tum satırları bir degişkene atıp daha sonra bu degişkende speratore kadar olan numaraları (tum satırlardakileri ) baska bir degişkene speratorden sonrakileride baska bir degişkene atıp daha sonra bunları


-------------------------------------------------------------------------------

no msg

1212121 jhgjgjhdsfsdfdsfd

seklinde bir adotable atmak istiyorum benim takıldıgım kısım ise bunu tek tek yapmam mumkun degil cunki memo ya yuklediigim txt dosyasındaki satır sayısı degişken bir yukleme esnasında 14 satır varken baska bir gun yuklenen txt 100 satır baska bir gun ise 1500 satır olabiliyor bu satır sayısı bazı gunler 150,000 e kadar cıkabiliyor işet bana bunu yapabilecegim bir dongu lazım :(
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

TStringList kullan.

Kod: Tümünü seç

procedure IslemYap;
var
  I: Integer;
  St: string;
begin
  with TStringList.Create do
  try
    LoadFromFile('C:\Test.TXT');
    for I := 0 to Count - 1 do
    begin
      St := Strings[I];

      //.....Burada istediğin işlemleri yaparsın.

    end;
  finally
    Free;
  end;
end;
Kullanıcı avatarı
ofenX
Üye
Mesajlar: 397
Kayıt: 09 Nis 2005 10:24
Konum: Diyarbakır
İletişim:

Mesaj gönderen ofenX »

Merhaba,

Memodaki bilgiler için aşağıdaki kod işini görmez mi?

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
var
i:longint;

begin

          showmessage(inttostr(memo1.Lines.Count));

         for i:=0 to memo1.Lines.count-1 do

            begin
                showmessage(memo1.lines[i]);
                // buraya string parçalama ve atama işleri yapılacak.



            end;


end;
Kolay gelsin.
Cevapla