Jajamensan, hade tom kvar den
Kod:
#include <iostream>
#include <fstream>
#include <string>
int main(int argc, char * * argv)
{
std::cout << "plainToCain V1.0" << std::endl;
std::cout << "================" << std::endl;
if( argc < 2 )
{
std::cout << "usage: " << argv[0] << " <file>" << std::endl;
return 1;
}
//Load files
std::string strIn = argv[1];
std::string strOut = strIn + ".out";
std::ifstream inFile(strIn.c_str());
if( !inFile.is_open() ) return 1;
std::ofstream outFile(strOut.c_str());
if( !outFile.is_open() ) return 1;
//Output
unsigned int uiDone = 0;
unsigned int uiSkipped = 0;
unsigned int uiCurLine = 0;
unsigned int uiProcessedLines = 0;
std::string strLine;
while( !inFile.eof() )
{
//Get line
++uiCurLine;
std::getline(inFile,strLine);
if( strLine.size() == 0 ) continue;
++uiProcessedLines;
//Check content validity
if( strLine.find_first_not_of("0123456789abcdefABCDEF") != std::string::npos )
{
++uiSkipped;
std::cout << "Warning: Line " << uiCurLine << " contains non-hexadecimal characters, line skipped" << std::endl;
continue;
}
outFile << strLine << ";;" << std::endl;
++uiDone;
}
//Close fils
inFile.close();
outFile.close();
//Print statistics
std::cout << "Converted: " << uiDone << std::endl;
std::cout << "Skipped: " << uiSkipped << std::endl;
std::cout << "Total Processed: " << uiProcessedLines << std::endl;
system("PAUSE");
//Done
return 0;
}