Heim > Artikel > Backend-Entwicklung > Wie schreibe ich einen std::string ordnungsgemäß in eine Textdatei in C?
Beim Versuch, einen std::string in eine Datei zu schreiben, kann es vorkommen, dass Zeichen erscheinen als Kästchen und nicht als beabsichtigter Text. Dies liegt daran, dass die Methode write() binäre Daten im String-Objekt speichert, einschließlich eines Zeigers und der Datenlänge.
Das Schreiben in eine Textdatei erfordert jedoch einen anderen Ansatz. Die empfohlene Methode besteht darin, einen Ofstream (Out-File-Stream) zu verwenden, der sich ähnlich wie std::cout verhält, die Ausgabe jedoch in eine Datei leitet.
Um mit std::string in eine Textdatei zu schreiben, müssen Sie können Sie diesen Schritten folgen:
Ein Beispielcode Snippet:
#include <fstream> #include <string> int main() { std::string input; std::cin >> input; std::ofstream out("output.txt"); out << input; out.close(); return 0; }<p><strong>Hinweis:</strong> Der out.close()-Aufruf ist nicht unbedingt erforderlich, da der ofstream Der Destruktor wird dies automatisch handhaben, wenn out den Gültigkeitsbereich verlässt.</p> <p>Wenn Sie in binärer Form in eine Datei schreiben müssen, verwenden Sie die c_str()-Methode von std::string, um die tatsächlichen Daten zu erhalten:</p> <pre class="brush:php;toolbar:false">write.write(studentPassword.c_str(), studentPassword.size());
Das obige ist der detaillierte Inhalt vonWie schreibe ich einen std::string ordnungsgemäß in eine Textdatei in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!