C++ Dosyanın İçeriğini Byte Dizisi Olarak Okuma

C++ programlama dilinde, dosyanın içeriğini byte dizisi olarak okumak için "std::ifstream" sınıfının "read" fonksiyonu kullanılabilir. Bu fonksiyon, bir dosyayı açar ve belirtilen miktarda baytı okur.

Aşağıda örnek kullanım mevcuttur...

#include <iostream>
#include <fstream>

int main() 
{
    std::ifstream dosya("dosya.txt", std::ios::binary);

    if (!dosya) {
        std::cout << "Dosya açılamadı." << std::endl;
        return 1;
    }
    
    dosya.seekg(0, std::ios::end);
    int boyut = dosya.tellg();
    dosya.seekg(0, std::ios::beg);
    
    char* byteDizisi = new char[boyut];
    dosya.read(byteDizisi, boyut);
    
    dosya.close();   
    
    return 0;
}

Bu kod örneğinde, "dosya.txt" adlı dosya açılarak "std::ifstream" sınıfı tarafından okunuyor. "std::ios::binary" bayrakları kullanılarak, dosya metin modunda değil, ikili modda açılıyor.

Dosyanın boyutunu öğrenmek için, "seekg" ve "tellg" fonksiyonları kullanılıyor. İlk önce, dosya okuyucu dosyanın sonuna taşınıyor ve dosyanın boyutunu belirlemek için "tellg" fonksiyonu kullanılıyor. Sonra dosya okuyucu başa döndürülüyor.

Daha sonra, dosyanın boyutu kadar bellekte byte dizisi oluşturuluyor ve "read" fonksiyonu kullanılarak dosya içeriği byte dizisine okunuyor.


C++

İlginizi Çekebilir

C++ Dizinin İlk ve Son Elemanının Aynı Olup Olmamasını Bulma Örne ...

C++ 1'den 100'e Kadar Asal Sayı Toplamı Örneği

C++ Bir Stringdeki Noktalama İşaretlerini Kaldırma Örneği

C++ Santigrat Cinsinden Sıcaklığı Fahrenheit'e Çevirmek

C++ Bir Diziyi Ters Çevirme