Re: Einlesen aus Datei > 2GB
Michael Wenger <[email protected]>
| Newsgroups | gmane.linux.suse.programming |
|---|---|
| Message-ID | <[email protected]> |
Hi Christian!
Christian Schneider schrieb am 02.06.2005 15:33 :
> ich habe ein kleines C++-Programm geschrieben, mit dem ich aus einer
> Datei lesen und in dieser einige Änderungen vornehmen will. Ich benutze
> ifstream. Nun will ifstream aber nicht mit Dateien ab einer Größe von
> 2GB (weil der Position-Pointer nicht mehr schafft?).
>
> Wie lese ich aus Dateien > 2GB bzw. schreibe in diesen? Bei C-Funktionen
> wird scheinbar nur ein long zur Positionierung verwendet, also ist da
> auch bei 2GB Schluss?
Das hängt extrem vom verwendeten Compiler ab. Ab g++ 3.4 sollte es mit
C++ möglich sein. Auf [1] steht zumindest dies:
| Large File Support (files larger than 2 GB on 32-bit systems).
Für den gcc gibt es Compilerflags:
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
Gruß,
Michael
[1] http://gcc.gnu.org/gcc-3.4/changes.html
--
Um die Liste abzubestellen, schicken Sie eine Mail an:
[email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]