Heim > Backend-Entwicklung > C++ > Wie kann ich Strings korrekt in Dateien in C schreiben?

Wie kann ich Strings korrekt in Dateien in C schreiben?

DDD
Freigeben: 2024-11-26 15:27:10
Original
687 Leute haben es durchsucht

How Can I Correctly Write Strings to Files in C  ?

Strings in Dateien in C schreiben

Bei der Verarbeitung von Benutzereingaben in Form von Strings möchte man diese häufig zur Speicherung in eine Datei schreiben. Der Versuch, dies mit der write()-Methode eines Ofstreams zu tun, kann jedoch zu unerwarteten Ergebnissen führen.

std::string und Dateischreiben

Es ist wichtig zu verstehen, dass std::string dies ist eine komplexe Datenstruktur, die sowohl den Wert als auch die Länge der Zeichenfolge intern speichert. Wenn write() mit std::string verwendet wird, wird diese interne Darstellung tatsächlich in die Datei geschrieben. Es ist unwahrscheinlich, dass diese Binärdaten beim Öffnen der Datei korrekt als Text angezeigt werden.

Verwendung eines Ofstream für Textdateien

Um Klartext in Dateien zu schreiben, empfiehlt sich die Verwendung eines Ofstream-Objekts , das sich wie ein std::cout zum Schreiben in Dateien verhält. Das folgende Codebeispiel veranschaulicht diesen Ansatz:

#include <fstream>
#include <iostream>

int main() {
    std::string studentName;
    std::cout << "Enter your name: ";
    std::cin >> studentName;

    std::ofstream outFile("output.txt");
    outFile << studentName;
    outFile.close();

    return 0;
}
Nach dem Login kopieren

Binärdaten in Dateien schreiben

Wenn Sie die tatsächliche binäre Darstellung der Zeichenfolge anstelle ihres Klartextwerts schreiben müssen, können Sie diese verwenden string::c_str(), um einen Zeiger auf die Rohdaten und deren Länge für write() abzurufen. Das folgende Snippet demonstriert dies:

write.write(studentPassword.c_str(), studentPassword.size());
Nach dem Login kopieren

Mithilfe dieser Techniken können Sie je nach Ihren spezifischen Anforderungen sowohl Klartextzeichenfolgen als auch Binärdaten effektiv in Dateien schreiben.

Das obige ist der detaillierte Inhalt vonWie kann ich Strings korrekt in Dateien in C schreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage