Voglio scrivere una std::stringvariabile che accetto dall'utente in un file. Ho provato a utilizzare il write()metodo e scrive sul file. Ma quando apro il file vedo delle caselle invece della stringa.
La stringa è solo una singola parola di lunghezza variabile. È std::stringadatto a questo o dovrei usare un array di caratteri o qualcosa del genere.
ofstream write;
std::string studentName, roll, studentPassword, filename;
public:
void studentRegister()
{
cout<<"Enter roll number"<<endl;
cin>>roll;
cout<<"Enter your name"<<endl;
cin>>studentName;
cout<<"Enter password"<<endl;
cin>>studentPassword;
filename = roll + ".txt";
write.open(filename.c_str(), ios::out | ios::binary);
write.put(ch);
write.seekp(3, ios::beg);
write.write((char *)&studentPassword, sizeof(std::string));
write.close();`
}
std::stringva bene per questo.