Wie lese ich Dateibytes in ein Char-Array in C ohne getline()?
Nov 02, 2024 pm 10:51 PMSo rufen Sie Dateibytes in ein Char-Array in C ab
So lesen Sie Dateibytes in ein char-Array ohne getline() ein mit ifstream::read(). Befolgen Sie diese Schritte:
-
Öffnen Sie die Datei:
<code class="cpp">std::ifstream infile("C:\MyFile.csv");</code>
Nach dem Login kopieren -
Ermitteln Sie die Dateilänge:
<code class="cpp">infile.seekg(0, std::ios::end); size_t length = infile.tellg(); infile.seekg(0, std::ios::beg);</code>
Nach dem Login kopieren -
Puffergröße sicherstellen:
<code class="cpp">if (length > sizeof (buffer)) { length = sizeof (buffer); }</code>
Nach dem Login kopieren -
Datei lesen:
<code class="cpp">infile.read(buffer, length);</code>
Nach dem Login kopieren
Zusätzliche Hinweise:
- Öffnen der Datei im Binärmodus (z. B. mit std::ios_base:: binär) wird für eine genaue Byte-Verarbeitung empfohlen.
- Suchg() und tellg() sind zwar im Allgemeinen zuverlässig, liefern in einigen Fällen jedoch möglicherweise nicht immer die genaue Dateigröße.
- Zum Lesen der gesamten Datei In einem Vorgang und bei der Verarbeitung großer Dateien bietet die Verwendung von std::vector und std::istreambuf_iterator möglicherweise mehr Flexibilität.
Aktualisierter Ansatz (2019):
Um mögliche Fehler beim Lesen zu berücksichtigen, sollten Sie den folgenden Ansatz in Betracht ziehen:
<code class="cpp">size_t chars_read; if (!(infile.read(buffer, sizeof(buffer)))) { if (!infile.eof()) { // Handle error during reading } } chars_read = infile.gcount(); // Get actual number of bytes read</code>
Das obige ist der detaillierte Inhalt vonWie lese ich Dateibytes in ein Char-Array in C ohne getline()?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

C Sprachfunktionsformat -Buchstaben -Fall -Konvertierungsschritte

GULC: C -Bibliothek von Grund auf neu gebaut

Welche Werte sind von C -Sprachfunktionen zurückgegeben? Was bestimmt den Rückgabewert?

Was sind die Definitionen und Aufrufregeln von C -Sprachfunktionen und was sind die?

Wie funktioniert die C -Standard -Vorlagenbibliothek (STL)?

Wo ist der Rückgabewert der C -Sprachfunktion im Speicher?

eindeutiger Gebrauch und Phrasenfreigabe

Wie benutze ich Algorithmen aus der STL (sortieren, finden, transformieren usw.) effizient?
