RSS Feed Twitter Facebook

Abone Ol!

26 Mart 2010 Cuma

ASP'de Değişken Tipini Çevirmek ( Convert )


ASP içerisinde bazen bir değişken tipini başka bir değişken tipine dönüştürmeye ihtiyaç duyabiliriz. Örneğin string olarak elimizde bulunan 2 sayı değişkeninin değeri  sayi1="22″ ve sayi2="5" olsun bu iki değişkeni  toplama işleminde kullanmak istiyoruz. Ama değişken string olduğu için sağlıklı olmayacaktır. Öncelikle asp bu string ifadenin bir sayı yani integer değer olduğunu öğrenmek zorundadır. Peki bunu nasıl yapıyoruz. Cint(sayi1) komutuyla gelen değişkeni sayıya yani integer değişkenine dönüştürebiliriz. Bu kodun açılımı Convert Integer komutudur. Ufak bir örnek ile bunu gösterelim..

Örnek1: 

<% Dim sayi1,sayi2,toplam 'değişkenleri tanımladık..
sayi1= "22" 'sayi1'e 22 değerini atadık..
sayi2= "5" 'sayi2'ye 5 değerini atadık..
toplam=sayi1+sayi2 'sayi1 ile sayi2'deki değerleri topladık
Response.Write (toplam)
%>


Örnek1'de 3 adet değişken tanımlanmış sayi1,sayi2 ve toplam diye sayi1 değişkenine 22 değeri sayi2 değişkenine ise 5 değeri atanmış ve toplam değişkenine ise sayi1 ile sayi2'yi toplaması söylenmiş.. yanlız buraya dikkat 22 ve 5 bize göre birer sayı öyle değil mi fakat burada olaya Asp derleyicisinin gözü ile bakmak gerekirse 22 ve 5 birer string sayı değil..
Neden peki değerlerin her ikisi de " " içerisine girildiğinden dolayı bunların sayı yani integer olduğunu söyleyemeyiz.. Bu yüzden yukarıdaki örneğimizde istenilen sonuca varılamayacıktır.
Ekran çıktısı sayi1+sayi2=27 olması gerekirken bize 225 sonucunu vericektir. Bu iki değişkeni toplamak yerine yan yana yazdıracaktır.. Burada Convert Integer'ı kullanacağız sayi1=Cint(sayi1) ve sayi2=Cint(sayi2) şeklinde bu stringleri integera çevireceğiz..

Örnek2: 

<% Dim sayi1,sayi2,toplam 'değişkenleri tanımladık..
sayi1= "22" 'sayi1'e 22 değerini atadık..
sayi2= "5" 'sayi2'ye 5 değerini atadık..
sayi1=Cint(sayi1)
sayi2=Cint(sayi2)
toplam=sayi1+sayi2 'sayi1 ile sayi2'deki değerleri topladık
Response.Write (toplam)
%>

İşte şimdi istenilen sonuc elde edilebilir.. Birde buna tarih ile örnek verelim.. Zaten Convert işleminde en çok kullanılan Cint (Convert Integer) ve Cdate'dir.

Örnek3: 

<% Dim date,gun,saat
date= "19 Mart 2010"
gun= " Cuma "
saat=time
Response.Write (date & gun & saat)
%>

Yukarıdaki örneği bi inceleyin ne gördünüz tarihi string olarak atadım 19 Mart 2010 diye ve çıktıda aynı şekilde olacaktır.. Fakat bu şu şekilde olmalıydı 19.03.2010 bunun bir tarih olduğunu derleyicimize bildirmemiz gerekiyor..

Örnek4: 

<% Dim date,gun,saat
date= "19 Mart 2010"
gun= " Cuma "
saat=time
date=Cdate(date)
Response.Write (date & gun & saat)
%>

İşte şimdi oldu... Fakat 19.03.2010 Cuma gibi deil de biz bunu 19 Mart 2010 Cuma şklinde yazdırmak istiyoruz..o halde şöyle yapabiliriz..

Örnek5:

<%=FormatDateTime(Date(),vblongdate)%>

<%=  %> Response.Write ile aynı işlevi görmekteydi..


Ccur (ifade) :Parantez içinde verilen ifadeyi Currency veri tipine dönüştürür.
Cdbl (ifade) :Parantez içinde verilen ifadeyi Double veri tipine dönüştürür.
Cint (ifade) :Parantez içinde verilen ifadeyi Integer veri tipine dönüştürür.
Clng (ifade) :Parantez içinde verilen ifadeyi Long veri tipine dönüştürür.
CVar (ifade) :Parantez içinde verilen ifadeyi Variant veri tipine dönüştürür.
CBool (ifade) :Parantez içinde verilen ifadeyi Booolean veri tipine dönüştürür.
CByte (ifade) :Parantez içinde verilen ifadeyi Byte veri tipine dönüştürür.
CDate (ifade) :Parantez içinde verilen ifadeyi Date veri tipine dönüştürür.
CStr(ifade) : Parantez içinde verilen ifadeyi integer alt tipine dönüştürür 

0 yorum:


Yorum Gönder