txt uzantılı dosyada arama yapmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
meric89
Üye
Mesajlar: 61
Kayıt: 01 Eki 2007 11:00
Konum: ANKARA

txt uzantılı dosyada arama yapmak

Mesaj gönderen meric89 »

merhaba forumda aradım ama isteğim şeye ulaşamadım
c bir txt dosyası mevcut ben bu txt dosyasını içinde kayıtlı olan bir yazı var bu yazının eşitinde ise bir adres var ben butana bastığımda bu yazını eşitindeki adresi labela yazdırmak istiyorum bunu nasıl yapabilirim
örn:
deneme=server:deneme gibi
şimdiden teşekür ederim
Sözün en güzeli, söyleyenin doğru olarak söylediği, dinleyenin de yararlandığı sözdür
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

INI file okuma diye arattır sitede çok kayıt bulursun
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
meric89
Üye
Mesajlar: 61
Kayıt: 01 Eki 2007 11:00
Konum: ANKARA

Mesaj gönderen meric89 »

ini olmadan olmazmı başka kodu komutu filan yokmu eğer bilen varsa ve yazardsa sevinirim
Sözün en güzeli, söyleyenin doğru olarak söylediği, dinleyenin de yararlandığı sözdür
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

Şöle bir bakayım dedim arama da senin yazdığın bir mesaj bile çıktı.

viewtopic.php?t=21361&highlight=ini+file

sitede olan cevapları tekrar tekrar taşımak istemiyorum ama mesaja cevap vermişken bunuda buraya ekleyim dedim.

@Muharrem Abi demişki;
mrmarman yazdı:- Bir fonksiyon yazarsın.. File'den BockRead ile okunan her byte kontrol edilir. Nokta bulana kadar aldığı karakteri bir stream'e atar.

- Eğer aldığın bir string ifade grubu ise şöyle bir kurgu işini görecektir.

Kod: Tümünü seç

Function AyracaKadarOku( Var Dosya:File; Konum:dWord; Ayrac:Char ): String;
Var
  Okunan : Char;
begin
  ZeroMemory(@Result, SizeOf(Result));
  If Konum > 0 then Seek(Dosya, Konum); // konumu 0 geçerseniz olduğu yerden başlar.
  Okunan := #0;
  While (NOT EOF(Dosya)) AND (Okunan <> Ayrac) do begin
    BlockRead(Dosya, Okunan, SizeOf(Okunan));
    If Okunan <> Ayrac then Result := result + Okunan;
  end;
end;

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
Var
  Dosya : File;
  Liste : TStringList;
begin
  Liste := TStringList.Create;
  AssignFile(Dosya, 'c:\test.txt');
  Reset( Dosya, 1 );
  FileMode := faReadOnly;
  While NOT EOF(Dosya) do begin
    Liste.Add( AyracaKadarOku(Dosya, 0, '.') );
  end;
  ShowMessage(Liste.Text);
  Liste.Free;
  CloseFile( Dosya );
end;
- Bu uygulama c:\test.txt isimli bir dosya varsaydım. Noktalardan ayırarak satırlara böler. Tabi arada satır karakteri varsa bu sayı artar bu nedenle #13#10 içerenleri ayrıca kontrol etmen filtrelemen gerekir.

- Ayraç karakterini değişken yaptım ki ilerde nokta yerine başka karakter de kullanmak isteyebilirsin.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
meric89
Üye
Mesajlar: 61
Kayıt: 01 Eki 2007 11:00
Konum: ANKARA

Mesaj gönderen meric89 »

ben txt dosyasını içeriğinin tamamını almasını istemedimki sadece eşittirden sonrasını almasını istedim noktayı eşittir yaptım ama olmadı neyi değiştirmem gerekli eşittirden sonrasını alması için

ilgilendiğiniz için teşekür ederim
Sözün en güzeli, söyleyenin doğru olarak söylediği, dinleyenin de yararlandığı sözdür
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

Kod: Tümünü seç

Liste.Add( AyracaKadarOku(Dosya, 0, '.') );
buradaki "." yı "=" yaparsan
= karşısında yazanı sana verir.

Ayrıca hazır kod yazmadığımıda belirteyim.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
meric89
Üye
Mesajlar: 61
Kayıt: 01 Eki 2007 11:00
Konum: ANKARA

Mesaj gönderen meric89 »

onu ben ilk başta yaptım ama olmuyo hatta mesajımda belirtmiştim ilgilendiğiniz için çok teşekürler

sonuç değişmiyo txt sayfasını içindekileri hepsini veriyor
peki bir şey daha ekleyim ben bu txt uzantılı dosyayı ini uzantılı bir dosyaya çevirdim ini dosyasında bu işlem değişirmi
Sözün en güzeli, söyleyenin doğru olarak söylediği, dinleyenin de yararlandığı sözdür
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

viewtopic.php?t=6687&highlight=ini+file

bu linki incele burda inifile okuma,yazma daha detaylı anlatılmış
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
jackz
Üye
Mesajlar: 7
Kayıt: 02 May 2017 09:49

Re: txt uzantılı dosyada arama yapmak

Mesaj gönderen jackz »

Pardon ama "AyracaKadarOku" nedir. Tanımlanmamış da...
speed60
Üye
Mesajlar: 53
Kayıt: 07 Eki 2011 08:07

Re: txt uzantılı dosyada arama yapmak

Mesaj gönderen speed60 »

sList := TStringList.Create;
sList.LoadFromFile(s);
deneme := sList[0]; //sList in 1 satırı

FreeAndNil(sList);

i := pos('=', deneme);
delete(deneme, 1, i);
deneme := StringReplace(birimno, ';', '', [rfReplaceAll]);

yukarıdaki kodlama ile server:deneme alınmış olur
Cevapla