melihbakir
LorD oF The WaReZ
Bir Text Dosyası oluşturmak
Sunucunun herhangi bir dizininde bir text dosyasını, ASP komutları ile oluşturmak istersek, CreateTextFile nesnesini kullanmamız gerekir.
Bu komutun kullanımı şöyledir.
Set dosya_nesnesi = CreateObject("Scripting.FileSystemObject")
Set dosya_degiskeni =dosya_nesnesi.CreateTextFile
("c:\dosya_degiskenii_deneme.txt",false)
Bir Text dosyası oluşturmak ve yazdırmak
ASP sayfamız üzerinde bir text dosyası oluşturduktan sonra sıra geldi bu dosyamızın içine yazı yazmaya bunu Write & WriteLine komutları ile yapacağız.
<HTML>
<BODY>
<%
Set dosya_nesnesi = CreateObject("Scripting.FileSystemObject")
Set dosya_degiskeni = dosya_nesnesi.CreateTextFile
("c:\yazi_deneme.txt",false)
dosya_degiskeni.WriteLine("Bu bir denemedir.")
dosya_degiskeni.Close
%>
</BODY>
</HTML>
Bir Text Dosyasından Okumak
Metin yazdırma işlerinde sık sık uygulayacağımız bir senaryo, mevcut bir metin dosyasına ek yapmak olacaktır. Örneğin bütün ziyaretçilerimizin sitemizdeki konuk defterine yazdıklarını, bir metin dosyasında toplamak isteyebiliriz.
Bunu OpenTextFile metodu ile yapacağız. Bu metod, tahmin edeceğiniz gibi, açılacak dosyanın yolunu ve adını isteyecektir. Örneğin, ilgili satır şöyle olacak:
Set dosya_degiskeni = Dosya_degiskeni.OpenTextFile ("c:\inetpub\wwwroot\yazi_deneme.txt",8,0)
veya Set dosya_degiskeni = Dosya_degiskeni.OpenTextFile ("server.MapPath(“yazi_deneme.txt"),8,0)
Burada dosya yolunu ve adını veren birinci argümana ek olarak iki yeni argüman görüyorsunuz: “8,0” şeklinde. Bunlardan birinicisi girdi/çıktı durumu (I/O Mode), ikincisi ise biçim (Format) ile ilgilidir. I/O Mode parametreleri şunlardır:
1: okumak için aç
2: yazmak için aç
8: eklemek için aç
Açılacak dosyanın biçimini belirttiğimiz son argüman ise şu değerlerden birini alabilir:
0: ASCII dosyası olarak aç
-1: Unicode dosyası olarak aç (Örneğin içinde Türkçe karakterler varsa)
-2: Sistemin varsayılan dosya türü olarak aç
Buna göre, bir dosyayı salt okumak için açmak amacıyla “1,0” argümanlarını kullanmamız
Yararlanabileceğimiz diğer metodlar ise şunlardır:
Read (oku): Bir sayı örgümanı ile çalışır ve verdiğiniz sayı kadar karakter okur.
ReadLine (satır oku): Bir satır okur ve String olarak verir.
ReadAll (tümünü oku): Bütün satırları okur ve tek String olarak verir.
Skip (atla): Bir sayı argümanı ile çalışır ve verdiğiniz sayı kadar karakteri atlar.
SkipLine (satır atla): Bir sonraki satıra atlar.
Bu metodlarla sağladığımız okuma işinin kontrolü amacıyla şu özellikleri de kullanabiliriz:
AtEndOfStream (akımın sonunda): Okutulan dosyanın sonuna gelinmesi halinde True (doğru) olur.
AtEndOfLine (satırın sonunda): Okutulan satırın sonuna gelinmesi halinde True (doğru) olur.
Kullanımı:
response.write(dosya_degiskeni.read(10))
Yukarıdaki işlemlerin tam tersidir. Bu yöntemle text dosyamızın başından, belirttiğimiz adette karakter atlanır.
Kullanımı:
Dosya_degiskeni.skip(sayı)
response.write(dosya_degiskeni.readAll)
Dilersek oluşturduğumuz text dosyasından satır okutabiliriz. Bunun komutu Response.Write(dosya_degiskeni.ReadLine) ‘dır.
Text dosyalarındaki tüm satırları okumak için Response.Write(dosya_degiskeni.ReadLine) komutunu kullanırız.
Eğer satır satır okutmak istiyorsak döngü içine şu komutları kullanmamız gerekir.
do while dosya_degiskeni.AtEndOfStream=false
Response.Write(dosya_degiskeni.ReadLine)
Response.Write(“<br>”)
loop
Diyeli ki 3. satırı okumak istiyoruz bunun için if karar yapısından yardım almalıyız
Kullanımı :
do while dosya_degiskeni.AtAndOfStream =False
okunan_satir = dosya_degiskeni.ReadLine
if 3=dosya_degiskeni.line then
response.write okunan_satır
end if
Text dosyasından satır atlamak SkipLine Komutuyla yapılır
Kullanımı :
Dosya_degiskeni.SkipLine
Diyeli ki 3. satırı atlamak ve diğer tüm satırları yzdırmak istiyoruz. Bunun için if then else karar yapısını kullanacağız.
Örnek :
do while dosya_degiskeni.AtAndOfStream =False
if 3=dosya_degiskeni.line then
dosya_degiskeni.SkipLine
else
Response.Write(dosya_degiskeni.ReadLine)
end if
Sunucunun herhangi bir dizininde bir text dosyasını, ASP komutları ile oluşturmak istersek, CreateTextFile nesnesini kullanmamız gerekir.
Bu komutun kullanımı şöyledir.
Set dosya_nesnesi = CreateObject("Scripting.FileSystemObject")
Set dosya_degiskeni =dosya_nesnesi.CreateTextFile
("c:\dosya_degiskenii_deneme.txt",false)
Bir Text dosyası oluşturmak ve yazdırmak
ASP sayfamız üzerinde bir text dosyası oluşturduktan sonra sıra geldi bu dosyamızın içine yazı yazmaya bunu Write & WriteLine komutları ile yapacağız.
<HTML>
<BODY>
<%
Set dosya_nesnesi = CreateObject("Scripting.FileSystemObject")
Set dosya_degiskeni = dosya_nesnesi.CreateTextFile
("c:\yazi_deneme.txt",false)
dosya_degiskeni.WriteLine("Bu bir denemedir.")
dosya_degiskeni.Close
%>
</BODY>
</HTML>
Bir Text Dosyasından Okumak
Metin yazdırma işlerinde sık sık uygulayacağımız bir senaryo, mevcut bir metin dosyasına ek yapmak olacaktır. Örneğin bütün ziyaretçilerimizin sitemizdeki konuk defterine yazdıklarını, bir metin dosyasında toplamak isteyebiliriz.
Bunu OpenTextFile metodu ile yapacağız. Bu metod, tahmin edeceğiniz gibi, açılacak dosyanın yolunu ve adını isteyecektir. Örneğin, ilgili satır şöyle olacak:
Set dosya_degiskeni = Dosya_degiskeni.OpenTextFile ("c:\inetpub\wwwroot\yazi_deneme.txt",8,0)
veya Set dosya_degiskeni = Dosya_degiskeni.OpenTextFile ("server.MapPath(“yazi_deneme.txt"),8,0)
Burada dosya yolunu ve adını veren birinci argümana ek olarak iki yeni argüman görüyorsunuz: “8,0” şeklinde. Bunlardan birinicisi girdi/çıktı durumu (I/O Mode), ikincisi ise biçim (Format) ile ilgilidir. I/O Mode parametreleri şunlardır:
1: okumak için aç
2: yazmak için aç
8: eklemek için aç
Açılacak dosyanın biçimini belirttiğimiz son argüman ise şu değerlerden birini alabilir:
0: ASCII dosyası olarak aç
-1: Unicode dosyası olarak aç (Örneğin içinde Türkçe karakterler varsa)
-2: Sistemin varsayılan dosya türü olarak aç
Buna göre, bir dosyayı salt okumak için açmak amacıyla “1,0” argümanlarını kullanmamız
Yararlanabileceğimiz diğer metodlar ise şunlardır:
Read (oku): Bir sayı örgümanı ile çalışır ve verdiğiniz sayı kadar karakter okur.
ReadLine (satır oku): Bir satır okur ve String olarak verir.
ReadAll (tümünü oku): Bütün satırları okur ve tek String olarak verir.
Skip (atla): Bir sayı argümanı ile çalışır ve verdiğiniz sayı kadar karakteri atlar.
SkipLine (satır atla): Bir sonraki satıra atlar.
Bu metodlarla sağladığımız okuma işinin kontrolü amacıyla şu özellikleri de kullanabiliriz:
AtEndOfStream (akımın sonunda): Okutulan dosyanın sonuna gelinmesi halinde True (doğru) olur.
AtEndOfLine (satırın sonunda): Okutulan satırın sonuna gelinmesi halinde True (doğru) olur.
Text Dosyasının Başından Belirli Sayıda Karakter Okutmak
Read metodunun bir özelliği ile text dosyamızın başlangıç karakterinden itibaren kaç karakteri okuyacağımızı sunucuya bildirebiliriz.Kullanımı:
response.write(dosya_degiskeni.read(10))
Text Dosyasının Başından Belirli Sayıda Karakter Atlamak
Yukarıdaki işlemlerin tam tersidir. Bu yöntemle text dosyamızın başından, belirttiğimiz adette karakter atlanır.
Kullanımı:
Dosya_degiskeni.skip(sayı)
response.write(dosya_degiskeni.readAll)
Text Dosyasından Satır Okumak
Dilersek oluşturduğumuz text dosyasından satır okutabiliriz. Bunun komutu Response.Write(dosya_degiskeni.ReadLine) ‘dır.
Text Dosyasından Bütün Satırları Okumak
Text dosyalarındaki tüm satırları okumak için Response.Write(dosya_degiskeni.ReadLine) komutunu kullanırız.
Eğer satır satır okutmak istiyorsak döngü içine şu komutları kullanmamız gerekir.
do while dosya_degiskeni.AtEndOfStream=false
Response.Write(dosya_degiskeni.ReadLine)
Response.Write(“<br>”)
loop
Text Dosyasındaki Belirli Bir Satırı Okumak
Diyeli ki 3. satırı okumak istiyoruz bunun için if karar yapısından yardım almalıyız
Kullanımı :
do while dosya_degiskeni.AtAndOfStream =False
okunan_satir = dosya_degiskeni.ReadLine
if 3=dosya_degiskeni.line then
response.write okunan_satır
end if
Text Dosyasından Satır Atlamak
Text dosyasından satır atlamak SkipLine Komutuyla yapılır
Kullanımı :
Dosya_degiskeni.SkipLine
Diyeli ki 3. satırı atlamak ve diğer tüm satırları yzdırmak istiyoruz. Bunun için if then else karar yapısını kullanacağız.
Örnek :
do while dosya_degiskeni.AtAndOfStream =False
if 3=dosya_degiskeni.line then
dosya_degiskeni.SkipLine
else
Response.Write(dosya_degiskeni.ReadLine)
end if