couldn't replace string taken as input from user

0 votes
asked Jun 13 by Islamic videos (120 points)
void update_staff(){
	int x; // stores output when finds id matching index.
	string id, name, newn; //newn = new name;
	fstream fin; // fin = file in output mode.
	cout << "Enter id of member: " << endl;
	cin >> id;
 
	fin.open("Member.csv", ios:: out); // here file is opened in output mode. 
	if(fin.is_open()){
		getline(fin, name); //String from file to name is stored.
		
		x = name.find(id);
		if( x == -1){   // when no nothing found then -1 is stored in integer type variable.
			cout << "Name not found! " << endl;
					}
		else 
		{
			cout << "Name founded! " << endl;
			cout << "Enter new name: ";
			cin.ignore();
			getline(cin, newn);
			string.replace(newn, name);
		}
		
	}
	fin.close();
	fstream file;
 
		file.open("Updated Member.csv", ios:: app);
	if(file.is_open()){
		 file << newn;
 
			} // end of above if statement
	file.close(); 
	
} // ending of function.

1 Answer

0 votes
answered Jun 14 by gameforcer (2,950 points)

name.replace(0, newn.length(), newn);

This replaces 'name' with 'newn', starting at position 0 (first sign)..

If you need more then read the documentation about replace.

Welcome to OnlineGDB Q&A, where you can ask questions related to programming and OnlineGDB IDE and and receive answers from other members of the community.
...