[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [C++] stringhe e file



On Fri, Jan 01, 2010 at 11:35:38PM +0100, dando.sando@gmail.com wrote:
> In c++ devo leggere le righe di un file di input (file-1) e copiarle in
> un file output (file2) ma solamente se già non esistono nel file-2.
> Ho provato nel seguente modo:

Ciao,

Premesso che i suggerimenti che ti hanno gia' dato li condivido in massima parte, potresti provare cosi':

(ovviamente il codice *non* e' testato, usalo a tuo rischio e pericolo ;-) )


Ciao!
C!

#include <cstdlib>
#include <iostream>
#include <fstream>
#include <string>


int main(){

  std::string outf="output";
  std::string inf="input";

  std::fstream input(inf.c_str(),std::ios::in);
  std::fstream output(outf.c_str(),std::ios::out|std::ios::in);

  std::string verify;
  std::string parola;

  while(getline(input, parola)){
    bool found=false;
    while(getline(output, verify)){
      if(verify==parola){
        found=true;
        break;
      }
    }
    
    if(!found){
      if(output.eof()){
        output.clear();
      }
      output << parola << std::endl;
    }else{
    }

    output.seekp(0,std::fstream::end);
    output.seekg(0,std::fstream::beg);

  }
  
  input.close();
  output.close();
  return 0;
}


Reply to: