Başlangıç > C# > c# dosya veri yazma işlemi

c# dosya veri yazma işlemi


Merhaba
C# ile yazdığımız programlarda zaman zaman verileri sabit diskte bir yere yazma ihtiyacı duyarız. Bu gibi işlemler için çeşitli yollar olsada bugün basit olarak belirtiğimiz bir alana ve belirtiğimiz bir isimle veri yazma işlemine bakacağız. Öncelikle veri yazma işlemini yapacak olan sınıfımızı oluşturalım.

using System;
using System.IO;

namespace ConsoleLogCs
{
    class File
       
    {
      
        public void Write(string filePath, string fileName, string strLog, bool isAppend=true)
        {

            try
            {
                StreamWriter logWriter = new StreamWriter(filePath + fileName, isAppend);
                logWriter.WriteLine(strLog);
                logWriter.Close();
                logWriter.Dispose();
            }
            catch (Exception ex)
            {
                throw ex;                
            }

        }
    }
}

Artık elimizde yazma işlemini yapacağımız sınıfımız olduğuna göre şimdi bu sınıfı kullanıp basitce bir veri yazma işlemi yapalım.

using System;
using System.Text;

namespace ConsoleLogCs
{
    class Program
    {
        static void Main(string[] args)
        {
            File file = new File();
            byte[] i = new byte[0];
            StringBuilder sbLog = new StringBuilder();
            StringBuilder sbExLog = new StringBuilder();            
            

            try
            {
                sbLog.AppendLine(DateTime.Now.ToString());
                sbLog.AppendLine("First line");
                sbLog.AppendLine("Second line");
                sbLog.AppendLine("Message");

                file.Write("C:\\LogCs\\", "Log.txt", sbLog.ToString());
                
                // programın hata alması ve bu hata mesajını yazmak için eklendi.
                i[999999]=1; 

            }
            catch (Exception ex)
            {
                sbExLog.AppendLine(DateTime.Now.ToString());
                sbExLog.AppendLine(ex.Message);
                sbExLog.AppendLine(ex.StackTrace);
                file.Write("C:\\LogCs\\", "ExLog.txt", sbExLog.ToString());

            }

        }
    }
}

Yukarıdaki kodlarda görüldüğü gibi file.Write(“C:\\LogCs\\”, “Log.txt”, sbLog.ToString()); satırında istediğimiz mesajı belirtiğimiz dosya yolu ve ismi ile kayıt edebiliriz. Buna ilave olarak file.Write(“C:\\LogCs\\”, “ExLog.txt”, sbExLog.ToString()); satırında ise bir hata durmunda yine aynı yöntem ise bir başka dosyaya ya da istenirse aynı dosya içine hata bilgileri de yazdırılabilinir. Basitçe yaptığmız bu işlem ihtiyaçlara göre değiştirilip daha da kapsamlı olarak kullanılabilinir.

Kodlar çalıştırıldığında oluşan örnek dosyaların içeriği aşağıdaki gibidir.

[Log.txt]

26.03.2016 13:57:37
First line
Second line
Message

[ExLog.txt]

26.03.2016 13:57:37
Dizin, dizi sınırlarının dışındaydı.
   konum: ConsoleLogCs.Program.Main(String[] args) D:\TfsDevelop\Main\ConsoleLogCs\ConsoleLogCs\Program.cs içinde: satır 26

Kolay gelsin.

Reklamlar
Kategoriler:C# Etiketler:, , , , ,
  1. Henüz yorum yapılmamış.
  1. 26 Mart 2016, 14:08

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: