FmtStr Parametre

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

FmtStr Parametre

Mesaj gönderen rapsodim »

merhaba arkadaşlar,
FmtStr(x,'%.15d', [y]); ifadesinde '%.15d' ifadesiyle sıfır eklenmektedir.sıfır yerine boşluk koymak istesem parametre ne şkilde olmalıdır veya sıfır degilde x işareti koydurmak istesem nasıl yapılabilir.parametleri hakkında bilgi verirseniz sevinirm
bukentay
Üye
Mesajlar: 44
Kayıt: 16 Şub 2004 07:21

Mesaj gönderen bukentay »

FmtStr(x,'%15.d,[y])
(y numeric bi deger)
derseniz tamami 15 hane olacak sekilde basa bosluk koyar.
FmtStr(x,'X%15.d,[y]) derseniz basa X koyar geri kalanini 15 haneye tamamlicak sekilde basa bosluk koyar.ama dikkat etmeniz gereken basa her zaman 1 adet X koyar

format stringsdeki 'd' y'nin numeric oldugunu belirtir 's' koyarsaniz y nizde string olmalidir.
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

FmtStr(x,'%15.d,[y]) ifadesinde sadece tırnak yok yani '%15.d, olunca boşluk koyar '%15.d' olunca sıfır getirir.ben iki tarafada tırnak koyup kapatıyorum ondan sıfır getiriyor sizin yağtığınız gibi d den sonra tırnak koymaz ısem bosluk getırır doğrumud acaba yorumum
bukentay
Üye
Mesajlar: 44
Kayıt: 16 Şub 2004 07:21

Mesaj gönderen bukentay »

ozur dilerim FmtStr(x,'%15.d',[y]) olacakti .yani d den sonrada tirnak isareti var. orda asil olay rakamin (nurda 15 oluyor) "." noktanin saginda veya solunda olmasi.
rapsodim yazdı:FmtStr(x,'%15.d,[y]) ifadesinde sadece tırnak yok yani '%15.d, olunca boşluk koyar '%15.d' olunca sıfır getirir.ben iki tarafada tırnak koyup kapatıyorum ondan sıfır getiriyor sizin yağtığınız gibi d den sonra tırnak koymaz ısem bosluk getırır doğrumud acaba yorumum
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

bu ifadenin sonucu;

'000000000000019' gibi olur.benim sorduğum ise ' 19' olmasıdır.yani sıfırları yok edip bunun yerine boşluk nasıl koyabilirim alanın uzunluğu değişmiyecek
Misafir

pos lazım sana pos.

Mesaj gönderen Misafir »

var S: string;

begin
S := '0000025';

while Pos('0', S) > 0 do
S[Pos('0', S)] := ' ';
end;

sanırım işine yarar
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

dediğiniz şekilde yapılınca alanda bulunan tüm sıfırlara boşluk atıyor.sadece soldaki sıfırların yerine boşluk atmalı.
Misafir

Mesaj gönderen Misafir »

bak işte şimdi ayıp oldu. o kadarını da sen düşünüp yapmalısın. bi yol gösteriyoruz sana bi if kontrolu koyarsın halledersin.
Misafir

Mesaj gönderen Misafir »

formatlanmış bir bilgi (string) örneği verebilir misin peki?
bukentay
Üye
Mesajlar: 44
Kayıt: 16 Şub 2004 07:21

Mesaj gönderen bukentay »

bunun boyle oldugunu denemeden yazdiniz sanirim.
ben yazarken denedim dediginiz gibi '0' degil rakamin basina bosluk koyuyor?
karisikliga mahal vermeyelim die bir daha yazayim
FmtStr(x,'%15.d',[19]); bunun sonucu gelen x=' 19'
rapsodim yazdı:bu ifadenin sonucu;

'000000000000019' gibi olur.benim sorduğum ise ' 19' olmasıdır.yani sıfırları yok edip bunun yerine boşluk nasıl koyabilirim alanın uzunluğu değişmiyecek
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

bukentay tşkr ederim sorunum bu şekilde çözüldü.
Cevapla