„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie lese ich Dateiinhalte mithilfe von Iteratoren in einen String in C++ ein?

Wie lese ich Dateiinhalte mithilfe von Iteratoren in einen String in C++ ein?

Veröffentlicht am 08.11.2024
Durchsuche:793

How to Read File Contents into a String in C   Using Iterators?

Dateiinhalte in einen String in C einlesen

In C gibt es mehrere Methoden, um den Inhalt einer Datei effizient in einen einzigen einzulesen String-Variable. Ein Ansatz besteht darin, die Klasse std::ifstream zu verwenden.

Der folgende Codeausschnitt bietet ein Beispiel dafür, wie der Inhalt einer Datei mithilfe von std::ifstream und Iteratoren in einen String eingelesen wird:

#include 
#include 

int main(int argc, char** argv)
{
  std::ifstream ifs("myfile.txt");
  std::string content( (std::istreambuf_iterator(ifs) ),
                       (std::istreambuf_iterator()    ) );

  return 0;
}

Der obige Code öffnet die Datei „myfile.txt“ zum Lesen und liest mithilfe von Iteratoren den Inhalt der Datei in die Inhaltszeichenfolge ein. Die Anweisung std::ifstream ifs("myfile.txt"); Initialisiert das ifs-Objekt und öffnet die angegebene Datei zum Lesen.

Die zweite Codezeile, std::string content( (std::istreambuf_iterator(ifs) ), (std::istreambuf_iterator() ) ); verwendet Iteratoren, um den Dateiinhalt zu lesen. Der Iterator std::istreambuf_iterator(ifs) wird mit dem ifs-Objekt erstellt, und der Iterator std::istreambuf_iterator() wird ohne Argumente zur Darstellung des Endes der Datei erstellt. Die Inhaltszeichenfolge wird dann mithilfe dieser Iteratoren erstellt, wodurch effektiv der gesamte Dateiinhalt in die Zeichenfolge eingelesen wird.

Sobald der Dateiinhalt in die Inhaltszeichenfolge eingelesen wurde, können Sie bei Bedarf auf die Zeichenfolge zugreifen und sie bearbeiten. Sie könnten beispielsweise den Inhalt an die Konsole ausgeben oder andere String-Operationen ausführen.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3