#include "replace.hh" #include #include #include void replace(const std::string& input_filename, const std::string& output_filename, const std::string& src_token, const std::string& dst_token) { std::ofstream file_out; file_out.open(output_filename); if (!file_out.is_open()) { std::cerr << "Cannot write output file\n"; return; } std::ifstream file_in; file_in.open(input_filename); if (!file_in.is_open()) { std::cerr << "Cannot open input file\n"; return; } std::string token; while (std::getline(file_in, token)) { std::string::size_type n = 0; while ((n = token.find(src_token, n)) != std::string::npos) { token.replace(n, src_token.size(), dst_token); n += dst_token.size(); } file_out << token << "\n"; } }