19/08/2015 15

Qt GUI C++ ile QFile ve QDir İşlemleri - Dosya İşlemleri

Bu yazıda sizlere QT GUI C++ ile QFile ve QDir sınıfı işlemlerini anlatacağım. QFile ile dosya okuma yazma işlemlerini yani kısaca dosya işlemlerini yaparız. Bu işlemler sayesinde harici dosyalarda değerler tutup program içinde kullanabiliriz.Bu sayede basit bir veritabanı oluşturmuş oluruz.

İlk olarak Programımızda Hedaer dosyasında QFile nesnesini include ediyoruz. Şu şekilde yapıyoruz.


#include "qfile.h"
#include "qdir.h"
Şimdi ilk olarak bir klasör varmı yokmu onu kontrol edelim. Eğer klasör yoksa oluşturalım Bunun için Bir QDir nesnesi oluşturup onun exist() fonksiyonu ile çağıracağız. Dir kelimesi Directory kelimesinden gelir. Şimdi kodumuza geçelim…

  QDir klasor("c:/klasör/");
    if(!klasor.exists())
    {
        QDir().mkdir("c:/klasör/");
    }
 

Burda aradğımız klasörü klasör.exist () ile kontrol ettik ve eğer yoksa mkdir(“”) fonksiyonu ile oluşturduk. Bu şekilde dosyalarıda kontrol edebilirsiniz.

Şimdi QT GUI C++ ile bir dosya okuyup yazma işlemlerine geçelim. İlk olarak dosya yazdıralım…

 

 QFile bosalt(“yazacak olduğumuz dosyamızın yolu”);
    bosalt.open(QIODevice::Truncate|QFile::WriteOnly);burda dosyamızı açma yöntemimiz
    bosalt.write("");
    bosalt.close(); //dosyayı kapattık

Burda QFile ile bir dosya oluşturduk ve ardından onu açma yöntemimizi belirledik. Açma yönteminden kasıt dosya ile ne işlem yapacağımızdır. QIDevice seçeneği ile onun içeriğini boşaltıp QFile ile sadece yaz dedik.

Sonra write komutu ile içeriye veri yazdık. Ve close() ilede kapatmış olduk. Burda bir dosyanın oluşturduk ve içeriğini boşaltmış olduk. Şimdide Veri okuma işlemine geçelim. Buda Gayet basit bir işlem… Yine ilk olarak QFile ile bir dosya oluşturuyoruz içine yolunu veriyoruz…  

QFile dosya("d:/dosya.txt"); //dosyamızı oluşturduk
    QTextStream yazi(&dosya); // burda dosyamızı okuyup aktaracağımız nesneyi oluşturuyoruz
    while(!yazi.atEnd()) {
        QString satir = yazi.readLine();

        ui->txtVeri->append(satir);
    }
//buraya kadarda dosyayı okuyup bir textbox nesnesine aktardım

    dosya.close();//burdada dosyayı kapattım
 

Okuma işlemide bu kadar…

Burak Hamdi Tufan

İyi çalışmalar…


Tags

Share this Post



Post a Comment

Success! Your comment sent to post. It will be showed after confirmation.
Error! There was an error sending your comment.

Comments

  • çankaya

    Merhaba Ben sadece boş bir dosya oluşturmak istiyorum.linux de ki touch komutu gibi. QFile bosalt(“yazacak olduğumuz dosyamızın yolu”); bu kod yeterli mi.

    2016/11/28 12:04:38
  • tayyip

    merhaba benim boş bir dosya oluşturmam lazım.nasıl yapabilirim.linux touch komutu gibi.

    2016/11/28 12:23:30
    • Burak Hamdi TUFAN

      Merhabalar QString _FileStr("Dosyanızın yolu olacak"); QFile t(_FileStr); t.open(QFile::Append|QFile::Truncate); t.write(""); t.close(); bı şekilde boşdosya oluşur

      2016/12/04 12:22:58
  • Burak Hamdi TUFAN

    Diğer programlama dillerindeki gibi ilk olarak open ve son olarak close işlemlerini yapmalısınız Merhabalar QString _FileStr("Dosyanızın yolu olacak"); QFile t(_FileStr); t.open(QFile::Append|QFile::Truncate); t.write(""); t.close(); bı şekilde boşbir dosya oluşur ve write içine ne isterseniz yazdırabilirsiniz.

    2016/12/04 12:24:34