c# not defteri acil yardım
9
●445
- 19-06-2018, 10:03:39Üyeliği durdurulduMerhaba 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:51Yazdığınız notu bir yere kayıt edebilirsiniz ( mysql, mssql , txt ), programı çalıştırdığınız yerden okuma yapabilirsiniz.webirinci adlı üyeden alıntı: mesajı görüntüle
- 19-06-2018, 10:11:36Üyeliği durdurulduzaten kaydetme işlemini txt olarak yapıyorum nasıl bir kod yazıcam son kaydettiğimi tekrar çekmek iinKingCoder adlı üyeden alıntı: mesajı görüntüle
- 19-06-2018, 10:13:16Aşağıdaki kodları kullanabilirsinizwebirinci adlı üyeden alıntı: mesajı görüntüle
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, 12:34:28Aslı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.webirinci adlı üyeden alıntı: mesajı görüntüle
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:08txt içinde birden fazla not mu olucak ? Tek bir not ise her seferinde eskisini silip tekrar oluşturduğun zaman en güncel kaydı çekersinwebirinci adlı üyeden alıntı: mesajı görüntüle
- 19-06-2018, 12:45:41Arkadaşı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:36Eğ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.Wmqp adlı üyeden alıntı: mesajı görüntüle