C++ Dosyanın Uzantısını Değiştirme

C++ dilinde dosyanın uzantısını değiştirmek için std::string sınıfının metodlarından yararlanabiliriz. Bu metodlar sayesinde dosya isminin sonunda bulunan uzantıyı alabilir, değiştirebilir ve tekrar birleştirebiliriz.

İşlemi yapabilmek için öncelikle dosya isminin tam yolunu (path) belirtmemiz gerekir. Dosya ismi string olarak tanımlanır ve metodlar uygulanır.

Aşağıdaki kod örneğinde, "dosya_ismi" adlı string değişkeni dosya ismini tutar ve "dosya_ismi.substr()" ile dosya isminin uzantısı alınır. Ardından "dosya_ismi.replace()" ile uzantı değiştirilir ve tekrar birleştirilir.


#include <iostream>
#include <string>

int main() 
{
    std::string dosya_ismi = "ornek.txt";
    std::string uzanti = dosya_ismi.substr(dosya_ismi.find_last_of(".") + 1);
    std::cout << "Eski uzanti: " << uzanti << std::endl;

    dosya_ismi.replace(dosya_ismi.end() - uzanti.length(), uzanti.length(), "doc");
    std::cout << "Yeni dosya ismi: " << dosya_ismi << std::endl;
    return 0;
}

Çıktısı aşağıdaki şekilde olacaktır..

Eski uzanti: txt
Yeni dosya ismi: ornek.doc

Kodun çalışma şekli: Dosya ismi "ornek.txt" olarak tanımlanır. Daha sonra dosya isminin sonunda bulunan uzantı (".txt") substr() metodu ile alınır ve uzanti değişkenine atanır. Elde edilen uzantı "txt" olarak yazdırılır. Sonra replace() metodu ile dosya ismi ".txt" uzantısı ".doc" olarak değiştirilir ve tekrar birleştirilir. Yeni dosya ismi "ornek.doc" olarak yazdırılır.


C++

İlginizi Çekebilir

C++ Bir Stringde Tam Sayılar Dışındaki Karakterleri Kaldırma Örne ...

C++ Bir Dizideki Tek Sayıların Adetini Bulma Örneği

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

C++ Tam Sayıdaki Rakamları Ters Sırada Gösterme Örneği

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