• 19-06-2018, 10:03:39
    #1
    Üyeliği durduruldu
    Merhaba arkadaşlar ben programıma extra olarak bir not defteri yaptım fakat ben son kaydettiğim notu programı kapatıp açtıktan sonra nasıl görebilirim yani son veriyi okuma işlemi yapıcam bunu isme göre yapamam mecbur zamana göre yapmam gerek nasıl yaparım fikri olan varmı
  • 19-06-2018, 10:05:51
    #2
    webirinci adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar ben programıma extra olarak bir not defteri yaptım fakat ben son kaydettiğim notu programı kapatıp açtıktan sonra nasıl görebilirim yani son veriyi okuma işlemi yapıcam bunu isme göre yapamam mecbur zamana göre yapmam gerek nasıl yaparım fikri olan varmı
    Yazdığınız notu bir yere kayıt edebilirsiniz ( mysql, mssql , txt ), programı çalıştırdığınız yerden okuma yapabilirsiniz.
  • 19-06-2018, 10:11:36
    #3
    Üyeliği durduruldu
    KingCoder adlı üyeden alıntı: mesajı görüntüle
    Yazdığınız notu bir yere kayıt edebilirsiniz ( mysql, mssql , txt ), programı çalıştırdığınız yerden okuma yapabilirsiniz.
    zaten kaydetme işlemini txt olarak yapıyorum nasıl bir kod yazıcam son kaydettiğimi tekrar çekmek iin
  • 19-06-2018, 10:13:16
    #4
    webirinci adlı üyeden alıntı: mesajı görüntüle
    zaten kaydetme işlemini txt olarak yapıyorum nasıl bir kod yazıcam son kaydettiğimi tekrar çekmek iin
    Aşağıdaki kodları kullanabilirsiniz
     string dosya_yolu= @ "C:metinbelgesi.txt";
            FileStream fs = new FileStream(dosya_yolu, FileMode.Open, FileAccess.Read);
            StreamReader sw = new StreamReader(fs);    
            string yazi=sw.ReadLine();
            while (yazi != null)
            {
                Console.WriteLine(yazi);
                yazi = sw.ReadLine();
            }
     
            sw.Close();
            fs.Close();
  • 19-06-2018, 10:16:00
    #5
    Üyeliği durduruldu
    çok teşekkür ederim



    fakat benim istediğim son kaydettiğim dosyayı okutmak
  • 19-06-2018, 12:34:28
    #6
    webirinci adlı üyeden alıntı: mesajı görüntüle
    çok teşekkür ederim




    fakat benim istediğim son kaydettiğim dosyayı okutmak
    Aslında bir çok yolu var fakat aklıma metin dosyalarının "Değişiklik Tarihi" aldırıp karşılaştırma yaparak en son kaydedilen dosyayı buldurarak okutmak oldu.

    DirectoryInfo dir = new DirectoryInfo(Application.StartupPath); // Exe'nin bulunduğu klasör
                FileInfo[] file = dir.GetFiles("*.txt");  // Klasördeki tüm metin dosyalarını çek
    
    DateTime lastWritedFile = File.GetLastWriteTime(Application.StartupPath + @"\" + file[0].Name); // Burada en son yazılmış (kaydedilmiş) olan metin dosyasını ilk okuduğu dosya kabul ettik
                DateTime searchWriteDate; // Diğer dosyaların yazılma tarihlerini okumak için
    
                string filename = file[0].Name; // En son kaydedilen dosya tanımladık
    
                for (int i = 0; i < file.Length; i++) 
                {
                    searchWriteDate = File.GetLastWriteTime(Application.StartupPath + @"\" + file[i].Name); // Sırasıyla tüm metin dosyaların son kaydedilme tarihlerini alır
    
                    if (lastWritedFile < searchWriteDate) filename = file[i].Name; // Eğer yukarıda tanımladığımız lastWritedFile'da ki dosyadan daha sonra kaydedilmiş bir dosya varsa onu en son kaydedilmiş dosya olarak tanımlar.
                }
    
                /* DOSYA OKUMA */
                StreamReader sr = new StreamReader(filename);
                string line;
    
                while ((line = sr.ReadLine()) != null) richTextBox1.Text += line + "\n";
    Umarım yardımcı olabilmişimdir.
  • 19-06-2018, 12:38:08
    #7
    webirinci adlı üyeden alıntı: mesajı görüntüle
    çok teşekkür ederim




    fakat benim istediğim son kaydettiğim dosyayı okutmak
    txt içinde birden fazla not mu olucak ? Tek bir not ise her seferinde eskisini silip tekrar oluşturduğun zaman en güncel kaydı çekersin
  • 19-06-2018, 12:45:41
    #8
    Arkadaşın istediği basit aslında. Son kayıt ettiği notu program açıldığında tekrardan okumak.

    @BatuhaNN; mantığın doğru lakin çok uzun yolu tercih etmişsin.
    Programı kapandığında yani onclosing eventinde registry e dosya yolunu yaz.
    Programı açıldığında override onload kısımında ise registryden dosya yolunu çek, ve stream ile o dosya yolundaki txt dosyayı oku.

    Zorlanırsan haber ver, örnek hazırlıyayım.
  • 19-06-2018, 12:54:36
    #9
    Wmqp adlı üyeden alıntı: mesajı görüntüle
    Arkadaşın istediği basit aslında. Son kayıt ettiği notu program açıldığında tekrardan okumak.

    @BatuhaNN; mantığın doğru lakin çok uzun yolu tercih etmişsin.
    Programı kapandığında yani onclosing eventinde registry e dosya yolunu yaz.
    Programı açıldığında override onload kısımında ise registryden dosya yolunu çek, ve stream ile o dosya yolundaki txt dosyayı oku.

    Zorlanırsan haber ver, örnek hazırlıyayım.
    Eğer elle, programsız şekilde müdahale edilirse diye öyle düşünmüştüm. Eğer arkadaş için elle müdahale önemsiz ise, sizin yöntem tabi ki daha güzel bir çözüm olacaktır.