Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Zer0_CooL
15 / 15 / 2
Регистрация: 21.12.2011
Сообщений: 72
#1

Изменить расширения файлов - C++

15.03.2013, 02:13. Просмотров 590. Ответов 3
Метки нет (Все метки)

Подскажите пожалуйста, как найти все файлы в некоторой папке с расширением *.xxx и изменить им расширение на *.yyy?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.03.2013, 02:13     Изменить расширения файлов
Посмотрите здесь:

Удаление файлов определенного расширения - C++
люди помогите доделать прогу,очень срочно... нужно зделать что бы она сначала искала,а потом предлагала удалить файл,файлы *.bat...

Поиск файлов определенного расширения - C++
Доброго времени суток. Есть такая проблема. Надо найти в каталоге (его вводит пользователь и этот момент у меня есть) все файлы...

Сортировка файлов по папкам в зависимости от расширения - C++
Всем привет! Я вот тут на досуге задумал написать такую программу которая бы сортировала файлы по расширению. Например: Открываю свою...

Программа шифрования файлов с возможностью расширения функционала - C++
Всем добрый вечер! Очень прошу помощи! Завтра сдавать задание: Написать программу, для шифрования файлов. В программе должно быть...

Регулярное выражение для получения списка файлов определенного расширения - C++
На С++ нужно из всех файлов выбрать те, которые, к примеру с раширением .txt, или .html Так вот, как мне сравнить регулярное выражение...

Опрос папки и удаление из неё всех файлов кроме заданного расширения - C++
При построении программы , вылезла проблема с бесконечным циклом, то есть , нужно вести опрос постоянно папки , и удалять из неё лишние...

Как узнать и изменить режим отображения скрытых и системных файлов в Windows? - C++
Как узнать, какой режим отображения скрытых и системных файлов установлен в настройках Windows? Как его изменить?

Как изменить расширение файлов в папке средствами C++ (возможно, есть какой-то аналог changefileext из делфи)? - C++
Всем здравствуйте! Я пришёл к вам за помощью!) Подскажите пожалуйста как можно изменить расширение файлов в папке. Точнее говоря, у...

По поводу расширения окна - C++
Здравствуйте, очень хочу узнать. Как в играх делают окно игры на весь экран? И возможно ли это в простых формах. Допустим при запуске...

Добавление расширения файла - C++
Подскажите, пожалуйста, как сделать так, чтобы в программе при запуске пользователь вводиил только имя файла а расширение к нему добавляла...

можно ли изменить имена объектов cin и cout? залесть в хедер (знаю, этого лучше не делать), и изменить обявление обектов? к примеру на chitai и pishi? - C++
можно ли изменить имена объектов cin и cout? залесть в хедер (знаю, этого лучше не делать), и изменить обявление обектов? к примеру на...

Проверка расширения файла по его содержимому - C++
Здравствуйте! Подскажите, пожалуйста: некоторое время я поступил на курсы С++ - и нам назначили итоговый проект. Назначили в стиле...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
UnsKneD
алкокодер
153 / 149 / 11
Регистрация: 27.12.2012
Сообщений: 548
15.03.2013, 07:59     Изменить расширения файлов #2
Zer0_CooL, это обязательно делать на C++?
Zer0_CooL
15 / 15 / 2
Регистрация: 21.12.2011
Сообщений: 72
15.03.2013, 12:36  [ТС]     Изменить расширения файлов #3
Цитата Сообщение от UnsKneD Посмотреть сообщение
Zer0_CooL, это обязательно делать на C++?
Ну можно с использованием .NET или boost библиотек.

Добавлено через 2 часа 21 минуту
Пока только придумал вариант с использованием .NET, но может есть лучше решение?
C++
1
2
3
4
5
6
7
8
9
10
void ChangeFileExtension(System::String^path, System::String^oldExt, System::String^newExt)
{
    using namespace System;
    using namespace System::IO;
 
    array<String^>^files = Directory::GetFiles(path, ("*" + oldExt));
 
    for each (String^file in files)
        File::Move(file, Path::ChangeExtension(file, newExt));
}
ForEveR
В астрале
Эксперт С++
7969 / 4731 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
15.03.2013, 13:46     Изменить расширения файлов #4
Юзайте http://www.boost.org/doc/libs/1_52_0...reference.html

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <boost/filesystem.hpp>
#include <iostream>
 
int main()
{
   namespace fs = boost::filesystem;
 
   const std::string dir = "testdir", ext = "txt", new_ext = "new";
   fs::path p(dir);
   for (fs::directory_iterator pos(p); pos != fs::directory_iterator(); ++pos)
   {
      const fs::path& p = pos->path();
      const std::string p_ext = p.extension().generic_string();
      if (fs::is_regular_file(p) && !p_ext.empty() && p_ext.substr(1) == ext)
      {
         fs::path new_p = p;
         new_p.replace_extension(fs::path("." + new_ext));
         fs::rename(p, new_p);
      }
   }
}
Bash
1
2
3
4
5
6
forever@pterois:~/My_pro1/cpp_pro/testdir$ ls
1.txt  2.txt  3.exe  4.txt  5.jpg
forever@pterois:~/My_pro1/cpp_pro$ g++ -o new new.cpp -lboost_filesystem -lboost_system
forever@pterois:~/My_pro1/cpp_pro$ ./new
forever@pterois:~/My_pro1/cpp_pro/testdir$ ls
1.new  2.new  3.exe  4.new  5.jpg
Yandex
Объявления
15.03.2013, 13:46     Изменить расширения файлов
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru