C++ Dosya İşlemleri

C++ programlama dili ile dosya oluşturma, dosya yazma, dosya okuma ve dosya silme işlemi ile ilgili bilgiler yer alıyor.

Dosya işlemleri

C++ programlama dilinde dosya işlemleri için fstream kütüphanesinde yer alan ifstream ve ofstream sınıfları kullanılır.

Her C programı bir C++ programı olduğundan C Dosya İşlemleri de kullanılabilir.

Dosya oluşturma

Dosya oluşturma işlemi için ofstream sınıfının kurucu metoduna dosya adının yazılması yeterli olacaktır.

#include <iostream>
#include <fstream>

using namespace std;

int main(){

  ofstream dosyaYaz("dosya.txt");
  dosyaYaz.close();

  return 0;
}

Dosya yazma

Dosya yazma işleminde yazılacak değerin ofstream değişkenine yönlendirilmesi yeterli olacaktır.

#include <iostream>
#include <fstream>

using namespace std;

int main(){

  ofstream dosyaYaz("dosya.txt");
  dosyaYaz << "C++ ile yaziliyorum.";
  dosyaYaz.close();

  return 0;
}

Dosyanın var olup olmadığı ve açılabilir olup olmadığının is_open() metodu ile kontrol edilmesi faydalı olacaktır.

#include <iostream>
#include <fstream>

using namespace std;

int main(){

  ofstream dosyaYaz("dosya.txt");

  if ( dosyaYaz.is_open() ){
    dosyaYaz << "C++ ile yaziliyorum.";
    dosyaYaz.close();
  }

  return 0;
}

Dosya okuma

Dosya okuma işlemi satır satır veya belirli bir formata göre yapılabilir.

Dosya okuma işlemi için ifstream sınıfının kurucu metoduna dosya adının verilmesi ve okuma biçimine göre getline veya get metodunun kullanılması yeterli olacaktır.

#include <iostream>
#include <fstream>

using namespace std;

int main(){
  ifstream dosyaOku("dosya.txt");
  string satir = "";

  if ( dosyaOku.is_open() ){

    while ( getline(dosyaOku, satir) ){
      cout << satir << endl;
    }

    dosyaOku.close();
  }

  return 0;
}

Dosyayı karakter karakter okumak için ifstream sınıfına ait get metodu kullanılır.

#include <iostream>
#include <fstream>

using namespace std;

int main(){
  ifstream dosyaOku("dosya.txt");
  char karakter;

  if ( dosyaOku.is_open() ){

    while ( dosyaOku.get(karakter) ){
      cout << karakter;
    }

    dosyaOku.close();
  }

  return 0;
}

Dosya silme

Dosya silme işlemi için remove fonksiyonu kullanılır.

#include <iostream>

using namespace std;

int main(){

  int sonuc = remove("dosya.txt");

  if(sonuc == 0){
    cout << "Dosya silindi";
  } else {
    cerr << "Dosya silinemedi";
    return -1;
  }

  return 0;
}

Dosyanın sonuna ekleme yapmak için ofstream sınıfına ait kurucu metodun ikinci parametresine ios::app değerinin yazılması yeterli olacaktır.

Programlama örneklerine buradan ulaşabilirsiniz…

Hayırlı günler dilerim.

Yusuf SEZER

Yusuf SEZER

Computer Engineer who interested about web technologies, algorithms, artificial intelligence and embedded systems; constantly exploring new technologies.


Bunlara'da bakmalısın!