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++ Dosya Taşıma

C++ Dictionary Key Value Değerlerini Ters Çevirmek

C++ Dizideki Bir Elemanı Döngü İle Arama Örneği

C++ Dört İşlem Yapan Örnek

C++ 1'den N'e Kadar Olan Çift Sayıların Toplamını Bulma Örneği