одна есть, выложу может тоже кому понадобится
5) Дан текстовый файл F. Переписать в другой файл G все строки, содержащие цифры.
#include <iostream>
#include <string>
#include <fstream>
#define PROGRAM_NAME argv[0]
#define INPUT_NAME argv[1]
#define OUTPUT_NAME argv[2]
int main(int argc, char ** argv){
if ( argc < 3 ){
std::cerr << "Usage: " << PROGRAM_NAME << " input_file_name output_file_name" << std::endl;
return 1;
}
std::ifstream ifs(INPUT_NAME);
if ( ! ifs.is_open() ){
std::cerr << PROGRAM_NAME << ": can't open file " << INPUT_NAME << " for input!" << std::endl;
return 1;
}
std:
![Shock](images/smilies/new/shock.gif)
fstream ofs(OUTPUT_NAME);
if ( ! ofs.is_open() ){
std::cerr << PROGRAM_NAME << ": can't open file " << OUTPUT_NAME << " for output!" << std::endl;
return 1;
}
std::string buf;
while ( std::getline(ifs, buf) ){
if ( buf.find_first_of("0123456789") != std::string::npos ){
if ( ! (ofs << buf << std::endl) ){
std::cerr << PROGRAM_NAME << ": can't write to " << OUTPUT_NAME << std::endl;
return 1;
}
}
}
if ( ifs.bad() ){
std::cerr << PROGRAM_NAME << ": can't read from " << INPUT_NAME << std::endl;
return 1;
}
ifs.close();
ofs.close();
std::cerr << PROGRAM_NAME << ": just finished." << std::endl;
return 0;
}