Dosya Erişim Modları

Visual Basic & Action script Dosya Erişim Modları Programlama hakkında bilgi paylaş; Kullanılacak Komutlara Giriş -------------------------------------------------------------------------------- Bu örneğimde dosyaya direkt olarak veri yazma ve okuma komutlarını kullandım. Bunun iç...
Cevapla
 
Seçenekler
  #1  
Arama 24-01-2008, 02:32
Banlı
Üyelik Tarihi: 18/09/07
Mesajlar: 1.551
 
     WS-Ticareti: (1)
Blog Yazıları: 1
Teşekkürleri: 0
20 Msg. 27 Tşkr.
Rep Gücü: 0 B737 rep gücü epey yüksek

Dosya Erişim Modları

Kullanılacak Komutlara Giriş



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


Bu örneğimde dosyaya direkt olarak veri yazma ve okuma komutlarını kullandım. Bunun için ilk önce bu komutların ne işe yaradığını ve nasıl kullanıldığını görelim…

YAZMA MODLARI



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


1 – Output Modu

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

Dosya sıralı erişim modunda sadece yazma işlemi için açılır. Veriler tek yönlü taşınır ve okuma işlemine izin verilmez.
Yazma işlemi birkaç farklı teknikle yapılabilir.Bunlardan birincisi PRINT metodudur. Print metodunda bilgiler yan yana veya alt alta aralarında hiçbir ayıraç kullanılmadan yazılır.
Print #1,bilgi1,bilgi2,bilgi3  Veriler yan yana yazılır.
Print #1, bilgi1
Print #1, bilgi2
Print #1, bilgi3  Veriler alt alta yazılır.
Write metodu ise ikinci bir seçenektir. Bu metot ile yazma işlemi yaptığımızda hedef dosyaya gönderdiğimiz bütün bilgiler “bilgi” şeklinde çift tırnak ile ayrılırlar. Yine print metodunda olduğu gibi tek satırda gönderilen bilgiler hedef dosyaya da tek satırda yazılırlar, alt alta write komutu verilerek yazılan bilgiler ise hedef dosya üzerinde de alt alta bulunurlar.
Fakat print metodundan farklı olarak write ile tek satırda gönderilen bilgiler hem çift tırnakla belirtilir hem de her bilgi arasına virgül işareti yazılarak ayrılırlar.
Output metodu ile yeni bir kayıt yaptığınızda, yeni bilgiler eski kayıtların üzerine yazılacaktır. Bo mod ile işlem yaparken eski verilerinizin kaybolacağını veya zarar göreceğini bilmeniz gerekir.

2 – Append Modu



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


Output modunda bulunan bütün özellikleri kullanabilen bir sıralı erişim modudur. Print ve write komutları output modunda olduğu gibi kullanılırlar.
Output modu ile yaptığınız tüm işlemleri Append modu ile yapabilirsiniz. Aralarında tek bir fark vardır o da Append modunda yeni kayıt yapıldığında kendini dosya sonuna eklemesidir. Yani Append modunda işlem yapıldığında eski kayıtlarınız silinmez ve yeni kayıt dosya sonuna kendini otomatik olarak ekler. Böylece hem Output modunda kayıt yapmış hem de verilerinizi kaybetmemiş olursunuz.

3 – Random Modu



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


Sıralı erişim dosyalarından oldukça farklı bir yapıya sahiptir. Bir veritabanı yapısına uygundur ve düşük seviyeli bir veritabanı için rahatlıkla kullanılabilir.
Bu moda yapılan her kayıt bir kayıt numarasına sahiptir. Ayrıca her kayıt belli bir uzunluktadır ve belirtilen uzunluğu aşan kayıtlarda artık bölüm hedef dosyaya yazılmaz. Dosya açma işlemi sırasında dosya kayıt bilgisinden hemen sonra kayıtların karakter uzunlukları belirtilerek her kaydın bir kayıt numarası alması sağlanır.
Kullanımı : Open App.Path & “/volkan.txt” For Random As #1 Len=15 şeklindedir. Satırın sonunda bulunan Len = 15 bilgisi her kaydın ne kadar karaktere sahip olduğunu gösterir. Böylece sistem hedef dosyadaki bütün kayıtları okur ve bunları 15 karakterlik parçalara bölerek birer sıra numarası verir. Bu sıra numarasıyla daha sonra kayıtlar okunabilir.
Gönderdiğimiz veriler belirtilen kayıt uzunluğundan fazla ise değişken tanımlamamıza bağlı olarak ya kayıtların sonundaki fazlalık atılarak kayıt yapılır yada kayıt tam yapıldığı halde bir bölümü daha sonraki kayıt içinde yer alır.
Eğer gönderdiğimiz bilgiler kayıt uzunluğundan kısaysa eksik bölge kadar boşluk karakteri kayıt sonuna eklenerek kayıt uzunluğu olması gereken boyuta getirilir. Bu özellik ile kayıtlarımız belli bir düzende sıralanır ve veritabanı gibi kullanılabilir.
Random modunda PUT metodu kullanılır.

4 – Binary Modu



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


Binary dosyalama modu diğer modlara göre çok daha gelişmiş uygulamalar için tasarlanmıştır. Bütün özel dosya biçimleri Binary modu ile kayıt edilebilir ve içinde metin tabanlı dosyalama modlarına göre daha karmaşık bilgiler barındırabilir. Her kayıt metin değeri olarak 1 karakterlik yer kaplar. Random erişim modunda olduğu gibi her kayıt bir kayıt numarasına sahiptir fakat sadece 1 karakterlik kayıtlar yapabildiğimiz için bu kayıt numaraları aslında hedef bilginin dosya içindeki karakter sırasıdır.
Binary erişim modu ile her karaktere ayrı ayrı erişebilir, düzenleyebilr veya silebilirsiniz. Bu özelliğinden dolayı metin tabanlı dosya biçimleri dışındaki bütün özel dosya biçimlerine Binary mod ile erişmek zorunda kalırız. Örneğin bir .EXE veya .BMP dosyası oluşturmak istediğimde kullanacağımız dosya erişim biçimi kesinlikle Binary mod olmalıdır. Aksi taktirde oluşturduğumuz dosya işlemci veya işleyici program tarafından doğru olarak okunamaz, işlenemez.
Kullanımı :Put #1, 1, bilgi1 şeklindedir. “, 1 ,” kayıt numarasıdır. Yani bu bilgi1’in 1. karakter olduğunu belirtir.

OKUMA MODLARI



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


1 – Input Modu



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


Input modunda dosya okumak için iki teknik kullanabiliriz. Bunlardan birincisi Input okuma modudur.
Bu teknikte dosya açıldıktan sonra verilen her input komutu dosyada bir satırın okunması anlamına gelir. Satır numarası verilmediği halde bir input komutundan sonra gelen diğer input komutu sıradaki satırın okunması anlamına gelir. Dosya kapanmadığı sürece her input komutunda bir sonraki satır okunacaktır. Bu durum dosya açıldıktan sonra her satırın sadece bir defa okunabilmesi anlamına gelir. Ayrıca hedef satıra ulaşmak için o satırdan önceki bütün satırları da okumak zorunda kalırız. Dosyayı tümüyle okuyacak ve bir değişkene atayacak olursak input tekniği etkili bir çözüm olabilir, fakat dosya üzerinde özel işlemler yapmak istiyorsak input tekniği bize çeşitli sorunlar çıkartacaktır.
Input modunda kullanacağımız ikinci teknik ise Line Input. Bu teknikte hedef satır numarası verilebilir ve diğer kayıtlarla uğraşılmadan direkt olarak hedef satır okunur. İstendiğinde daha önce okunmuş bir satır tekrar okunabilir, okunmuş olan satırdan da daha önceki bir satıra ulaşılabilir. Metin tabanlı kayıtlar oluşturmuşsak input modu ve line input tekniği işinize yarayacaktır.

2 – Random Modu



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


Random modu yine bu moda kaydedilmiş olan verileri okumak için kullanılır. GET tekniği kullanılır.
Kullanımı : Get #1, 1, bilgi1  şeklindedir.

3 – Binary Modu



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


Binary modu yine bu moda kaydedilmiş olan verileri okumak için kullanılır. GET tekniği kullanılır.
Kullanımı : Get #1, 1, bilgi1  şeklindedir.
KODLARIN KULLANIMINA ÖRNEK



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


Private Sub command1_Click()
Dim bilgi As String
Open App.Path & “/volkan.txt” For Input As #1
Do While Not EOF(1)
Bilgi = bilgi & Input(1,#1)
Loop
Close #1
MsgBox (bilgi)
End Sub

Private Sub Command1_Click()
Dim bilgi1 As Byte
Dim bilgi2 As Byte
Dim bilgi3 As Byte
Dim bilgi4 As Byte
Open App.Path & “/volkan.txt” For Binary As #1
Get #1, 1, bilgi1
Get #1, 10, bilgi2
Get #1, 20, bilgi3
Get #1, 30, bilgi4
Close #1
MsgBox (CStr(Chr(bilgi1))&vbCrLf_
&CStr(Chr(bilgi2))&vbCrLf_
&CStr(Chr(bilgi3))&vbCrLf_
&(CStr(Chr(bilgi4)))
End Sub
Alıntı ile Cevapla
Cevapla
Arama Etiketleri: , ,



Seçenekler


Benzer Konular
Konu Konu Açanlar Forum Cevaplar Güncel Mesajlar
Google'a erişim de kapatılıyor!! Relax Webmastersitesi çöplüğü 14 09-08-2008 05:44
Google gruplarına erişim engellendi interyum Google - Msn - Yahoo Yenilikler 0 22-06-2008 01:26
phpBB Modları nasıl yüklenir? Turk3005 Phpbb 11 10-06-2008 12:39
cgi-perl Dosya işlemleri (Dosya erişim yetkileri, dosya açma, okuma, yazma ve kapatma W-S Perl-Cgi 0 13-03-2008 12:54
YouTube'a erişim yasağı kaldırıldı B737 Haberler 0 24-01-2008 01:16

Webmaster Sitesine Reklam Verin

Webmaster web tasarım online reviews ~ Kadınlar blogu ~ Apple iPhone, iPod Touch ( iTouch ) Forum ~ iPhone