ProgramlamaBackend geliştirici (VB.NET)

Giriş-Çıkış (I/O) akışları ile Visual Basic'te nasıl çalışılır, dosya okuma ve yazma yöntemleri nelerdir ve kaynak yönetimi konusunda ince noktalar nelerdir?

Hintsage yapay zeka asistanı ile mülakatları geçin

Cevap.

Visual Basic'te dosyalarla çalışma, hem klasik prosedürler (FileOpen, Input, Put, Close) hem de .NET API (System.IO.StreamReader, StreamWriter, FileStream) aracılığıyla desteklenmektedir. .NET sınıflarının kullanılması tercih edilmektedir.

İnce noktalar:

  • Kaynakların otomatik olarak serbest bırakılması için Using yapıları kullanılması önerilir.
  • Büyük dosyalarla çalışırken, tamponlama kullanmak daha uygun olacaktır.
  • Satır okuma ve yazma için StreamReader/StreamWriter, baytlar için FileStream kullanın.
  • Dosyalara erişimde olası istisnaları işleyin (erişim hataları, kilitlenmeler).

Örnek kod:

Dim filePath As String = "test.txt" ' Dosyaya yazma Using writer As New StreamWriter(filePath) writer.WriteLine("Merhaba dünya!") End Using ' Dosyadan okuma Using reader As New StreamReader(filePath) Dim content As String = reader.ReadToEnd() End Using

Kandırmaca soru.

StreamWriter ile bir dosyaya yazım yaptıktan sonra akışı kapatmazsak ne olur ve Using yapısını kullanmanın önemi nedir?

Cevap: Eğer akışı kapatmazsanız ( Close çağrılmazsa veya Using kullanılmazsa), tamponlanan veriler diske kaydedilmeyebilir çünkü işletim sistemi bunları hafızada saklar. Ayrıca, açık bir akış dosya tanımlayıcısını tutar ve dosya diğer işlemler için kilitli kalabilir; uzun süreli uygulamalarda bu bellek ve kaynak sızıntısına yol açar. Using yapısı, bir istisna oluşsa bile Dispose çağrısını garanti eder.

Temanın incelikleri konusunda bilgi eksikliğinden kaynaklanan gerçek hata örnekleri.


Hikaye

Veri kaybı aniden: Bir bankada rapor oluşturma sırasında geliştirici StreamWriter'ı kapatmadı. Sonuç olarak, serbest bırakılmamış tampon nedeniyle dosyaya bazı veriler kaydedilmedi, müşteri hizmetleri departmanı nihai raporları açamadı.


Hikaye

Dosya tanımlayıcı sızıntısı: ERP sisteminde geliştiriciler dosyaları manuel olarak açtı ve sık sık Close çağrısını unuttular. Birkaç gün içinde uygulama açılan dosya sınırını aşarak çöküyordu.


Hikaye

Dosya kilitlenme çatışması: Ağ yedekleme hizmetinde dosya uygun erişim modunda açılmadı, bu da diğer programlara erişimi engelledi ve tüm departmanda uzun süreli duraksamalar yaşandı.