Estoy implementando un programa en C++ utilizando ifstream que debe buscar en archivos de gran tamaño (~ 1TB). Sin embargo, esto falla después de leer 2GB. ¿Hay alguna manera de obtener posiciones de archivos, incluso para archivos grandes? Compilo para una máquina de Windows de 32 bits.Buscando en archivos grandes con ifstream
std::ifstream f;
f.open(filename.c_str(), std::ifstream::in | std::ifstream::binary);
while(true) {
std::cout << (uint64_t)(f.tellg()) << std::endl;
//read data
}
no sé si esto realmente cambia nada, pero ¿Has intentado utilizar la alternativa C simple de leer archivos? – stefan
@stefan tiene controlador de posición de archivo C simple cuyo tamaño es mayor que 32 bits? – triclosan
@triclosan como dije: No sé, era solo una idea – stefan