Heim > Artikel > Backend-Entwicklung > Wie lese ich alle Dateibytes in ein Zeichenarray in C?
Alle Dateibytes in ein Zeichenarray in C abrufen
Diese Frage versucht zu verstehen, wie der Inhalt einer Datei in ein Zeichen eingelesen wird Array unter Umgehung der Einschränkungen von getline().
Lösung:
Anstatt getline() zu verwenden, sollten Sie erwägen, ifstream::read() zum Lesen einer Datei als zu implementieren ein Bytestrom. Die folgenden Schritte beschreiben den Prozess:
<code class="cpp">std::ifstream infile("C:\MyFile.csv"); // consider std::ios_base::binary for binary reads</code>
<code class="cpp">infile.seekg(0, std::ios::end); size_t length = infile.tellg(); infile.seekg(0, std::ios::beg);</code>
<code class="cpp">if (length > sizeof(buffer)) { length = sizeof(buffer); }</code>
<code class="cpp">infile.read(buffer, length);</code>
Zusätzliche Hinweise:
Das obige ist der detaillierte Inhalt vonWie lese ich alle Dateibytes in ein Zeichenarray in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!