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…
Comments
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:38merhaba benim boş bir dosya oluşturmam lazım.nasıl yapabilirim.linux touch komutu gibi.
2016/11/28 12:23:30Merhabalar 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:58Diğ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