Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <vector>
- #define BOOST_FILESYSTEM_VERSION 3
- #define BOOST_FILESYSTEM_NO_DEPRECATED
- #include <boost/filesystem.hpp>
- using namespace ::boost::filesystem;
- void get_all_files_of_given_extension(const path& root, const std::string& ext, std::vector<path>& ret)
- {
- if(!exists(root) || !is_directory(root)) return;
- recursive_directory_iterator it(root);
- recursive_directory_iterator endit;
- while(it != endit)
- {
- if(is_regular_file(*it) && it->path().extension() == ext) ret.push_back(it->path().filename());
- ++it;
- }
- }
- int main()
- {
- std::vector<path> filenames;
- get_all_files_of_given_extension(current_path(), ".jpg", filenames);
- std::cout << filenames.size() << " matching files found\n\n";
- std::cout << "wait while processing files\n\n";
- int i = 0;
- for( auto filename : filenames )
- {
- // cjpeg-static -quality 80 plik1.jpg > plik1-mozjpg.jpg
- std::string command = "cjpeg-static.exe -quality 80 ";
- command += filename.string() + " > mini_" + filename.string();
- std::cout << "processing file...\n";
- system( command.c_str() );
- std::cout << "file processed\n";
- std::cout << filename.string() << " -> mini_" << filename.string() << "\n";
- ++i;
- std::cout << i << " files processed\n\n";
- }
- std::cout << "all (" << i << ") files processed successfully\n\n";
- std::cout << "press enter to exit";
- std::cin.sync();
- std::cin.get();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement