I have to replace a string of a file by first opening it . the code i used is
In the file it is CONVERTED_REC_STATS = 7/or any number. i have to replace it with
CONVERTED_REC_STATS = UNK :7 ie i have to insert UNK in between CONVERTED_REC_STATS = and the number.so i have used this code..
#define T 8192
using namespace std;
string strReplace = "CONVERTED_REC_STATS";
string strNew = "CONVERTED_REC_STATS = UNK :";
string strReplace1 = "REC_KEY,ORIG_REC_KEY";
string strNew1 = " ""REC_KEY"",""ORIG_REC_KEY"" ";
std::ifstream filein("SKJ12032012.00112"); //File to read from
std::ofstream fileout("write2.txt"); //Temporary file
if(!filein || !fileout)
cout << "Error opening files!" << endl;
i'm not sure but i think, after filein.getline(text,T), the entire line gets copied to text and further to str, i.e., "= 7" is also copied into str.
when you say str = strNew, the entire string just gets replaced by "CONVERTED_REC_STATS = UNK :". You will have to do character-wise replacement i think.
... or you can split the string str at "=" and say -
str = strNew + "2nd half of string";
but as i said, i'm not sure and i'm waiting for other responses myself.