3.9 Dosyalar (Files)

C++, dosyalarla etkileşim kurmak için geniş bir kütüphane sunar. Dosyalar, verilerin kalıcı olarak saklanmasını ve programlar arasında veri paylaşımını sağlar. C++'da dosya işlemleri genellikle fstream kütüphanesi aracılığıyla gerçekleştirilir. Bu kütüphane, dosyaları açma, okuma, yazma ve kapama gibi işlemleri yapmamıza olanak tanır.

Dosya Türleri

C++'da üç ana dosya türü vardır:

  1. Giriş Dosyası (Input File): Dosyadan veri okumak için kullanılır. ifstream sınıfı ile temsil edilir.

  2. Çıkış Dosyası (Output File): Dosyaya veri yazmak için kullanılır. ofstream sınıfı ile temsil edilir.

  3. Giriş/Çıkış Dosyası (Input/Output File): Hem okuma hem de yazma işlemleri için kullanılır. fstream sınıfı ile temsil edilir.

Temel Dosya İşlemleri

Aşağıda, C++ kullanarak dosya okuma ve yazma işlemleri için temel bir örnek bulunmaktadır.

Dosyaya Yazma Örneği

#include <iostream>
#include <fstream>
using namespace std;

int main() {
    // Çıkış dosyası oluşturma
    ofstream dosya("ornek.txt");

    if (dosya.is_open()) {
        dosya << "Merhaba, bu bir dosya yazma örneğidir." << endl;
        dosya << "C++ dilinde dosya işlemleri yapıyoruz." << endl;
        dosya.close(); // Dosyayı kapatma
        cout << "Veri dosyaya başarıyla yazıldı." << endl;
    } else {
        cout << "Dosya açılamadı." << endl;
    }

    return 0;
}

Dosyadan Okuma Örneği

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main() {
    // Giriş dosyası açma
    ifstream dosya("ornek.txt");
    string satir;

    if (dosya.is_open()) {
        while (getline(dosya, satir)) {
            cout << satir << endl; // Satır satır okuma
        }
        dosya.close(); // Dosyayı kapatma
    } else {
        cout << "Dosya açılamadı." << endl;
    }

    return 0;
}

Dosya İşlemleri

  • Dosya Açma: open() fonksiyonu kullanılarak dosya açılabilir.

  • Veri Yazma: << operatörü ile dosyaya veri yazılır.

  • Veri Okuma: >> operatörü veya getline() fonksiyonu ile dosyadan veri okunur.

  • Dosya Kapama: close() fonksiyonu ile dosya kapatılır. Dosyanın kapatılması, verilerin dosyaya yazılması için önemlidir.

Dosya Hataları ile Baş Etme

C++'da dosya işlemleri yaparken, dosyanın açılmaması veya okuma/yazma hataları gibi durumlarla karşılaşabilirsiniz. Bu nedenle, dosya açma işlemlerinde is_open() metodu ile dosyanın başarılı bir şekilde açılıp açılmadığını kontrol etmek önemlidir.

Sonuç

C++ dilinde dosyalar, verilerin saklanması ve paylaşılması için önemli bir araçtır. fstream, ifstream ve ofstreamsınıfları, dosya işlemlerini kolaylaştırarak yazılımcılara esneklik sağlar.

Last updated