Ana Sayfa » Ders Notları ve Örnekler » ASP.NET » Dosyadan Metin Okuma - StreamReader Sınıfı

Uyarılar :
  • Bu sayfada yazılanlar yeniden yayınlanamaz.
  • Bu örnek ders sırasındaki anlatımlardan derlenmiştir. Özellikle bir makale şeklinde yazılmamıştır. Bilgilerde eksiklikler bulunabilir.

Örnek :

<%@ Page Language="VB" %>
<!-- System.IO isim adlanı (ad uzayı) giriş çıkış sınıflarını barındırır. Bu sınıfları
kısaca adlarını yazarak kullanabilmek içi isim alanını burada bildiriyoruz. (System.IO.StreamWriter yerine
StreamWriter şeklinde kullanabilmek için). -->
<%@ Import Namespace="System.IO" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    void Page_Load(Object o, EventArgs e)
    {
        
        /*   
        StreamReader bir bayt akışından (stream) veri okumamızı sağlar.
        (Stream, akış demektir. Bilgisayarda bir kaynaktan gelen veya bir kaynağa
        yazılan bayt silsilesi anlamında kullanılır. Akış, bir disk dosyası,
        ağda / Internette bir kaynak / hedef veya başka bir giriş çıkış aygıtından
        sağlanabilir veya bu kaynağa gönderilebilir. .NET Framwork dosya akışlarına
        yazmak ve okumak için Stream türünden bir kaç sınıf sağlar. Bunlardan
        dosyadakileri okumak için kullanılan bir tanesi System.IO.StreamReader'dır.
        */

        StreamReader sr = new StreamReader("c:\deneme2.txt");
        
        /*
        EndOfStream, dosyanın sonuna gelindiyse "true" aksi durumda "false" döndürür.
        while döngüsü yanındakı ifadenin (şartın) sonucu True olduğu sürece çalıştırılır.
        Altta "while" ifadesinin yanındaki mantıksal işlem (!sr.EndOfStream) "true"
        döndürdüğü sürece dosyadan okunan bir satır lbMesaj'ın Text'ine ekleniyor.
        sr.EndOfStream "false" döndürdüğünde (dosyanın sonuna) gelinmediyse
        !sr.EndOfStream (!false) sonucu "true" olacağından döngü çalışır.
        sr.EndOfStream "true" döndürdüğünde (dosyanın sonuna gelindiğinde)
        !sr.EndOfStream (!true) sonucu "false" olacağından döngü devam etmez.
        Okuma işlemi sona erer.
        */

        lbMesaj.Text = ""

        while (!sr.EndOfStream)
        {
        
            // Bir satır oku ve lbMesaj'ın Text'ine ekle.
            lbMesaj.Text += sr.ReadLine();

            // HTML çıktısı biraz düzgün görünsün diye bir satır sonu etiketi ekle.
            lbMesaj.Text += "<br>";             
        
        }

        // İşimiz bittiğinde akışı kapatırız.
        sr.Close();                             
        
    }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    
        <asp:Label ID="lbMesaj" runat="server" />
    
    </form>
</body>
</html>
İletişim : hazirsite@gmail.com