C++ Dosyanın Güncelleme Tarihini Değiştirme

C++ dilinde dosyanın güncelleme tarihini değiştirmek için kullanabileceğimiz birçok yol bulunmaktadır. Bunlardan bir tanesi, "utime" fonksiyonudur.

Bir dosyanın güncelleme tarihini değiştirmek için aşağıdaki gibi bir kod kullanabilirsiniz..

#include <fstream>
#include <ctime>
#include <iostream>

int main()
{
    std::string dosyaYolu = "dosya.txt";
    std::fstream dosya;

    dosya.open(dosyaYolu, std::ios::in | std::ios::out | std::ios::binary);

    if (dosya.is_open())
    {
        struct stat dosyaBilgisi;
        stat(dosyaYolu.c_str(), &dosyaBilgisi);
        dosyaBilgisi.st_mtime = time(NULL);
        int sonuc = utime(dosyaYolu.c_str(), &dosyaBilgisi);

        if (sonuc == 0)
        {
            std::cout << "Dosya güncelleme tarihi başarıyla değiştirildi." << std::endl;
        }
        else
        {
            std::cout << "Dosya güncelleme tarihi değiştirilirken bir hata oluştu." << std::endl;
        }

        dosya.close();
    }
    else
    {
        std::cout << "Dosya açılamadı." << std::endl;
    }

    return 0;
}

Bu kod fstream kütüphanesi ile dosya.txt adlı dosyanın içine erişiyor. stat fonksiyonu ile dosyanın özelliklerini dosyaBilgisi adlı bir yapıda saklıyor. st_mtime özelliği dosyanın güncelleme tarihini temsil ediyor ve bu özelliğe time(NULL) fonksiyonunun döndürdüğü değer atanıyor. utime fonksiyonu ile dosyanın güncelleme tarihi dosyaBilgisi yapısındaki st_mtime özelliği kullanılarak değiştiriliyor. utime fonksiyonunun döndürdüğü değer sıfırdan farklı ise dosya güncelleme tarihini değiştirirken bir hata oluştuğu belirtiliyor, değişiklik başarılı ise başarılı olduğu bildiriliyor. Dosya açılamazsa da dosya açılamadı şeklinde bir hata mesajı veriliyor.


C++

İlginizi Çekebilir

C++ Rastgele Harf Yaratmak

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

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

C++ Bir Stringten İlk N Karakteri Kaldırma Örneği

C++ Bir Sayının Karekökünün Hesaplanması