c++ - 在 C++ 中将大文本文件读取到内存

标签 c++ file-io large-files

有没有办法一次将大文本文件(~60MB)读入内存(比如增加程序内存限制的编译器标志)?目前,ofstream 的打开函数在尝试读取此文件时抛出段错误。

ifstream fis;
fis.open("my_large_file.txt"); // Segfaults here

该文件仅由以下形式的行组成

number_1<tabspace>number_2

即,两个数字由制表符分隔。

最佳答案

您还有一些其他问题,因为您不是通过调用open读取 文件。我的猜测是该文件不存在(或者不存在于您认为它应该存在的相对路径中)。

关于c++ - 在 C++ 中将大文本文件读取到内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2887890/

相关文章:

c++ - 在 va_list 对象中包含第一个参数

c++ - 在 DLL 中调用非导出函数

C++ 字符串流值提取

c - fscanf 只读取零

java - 如何在运行时更改文件扫描分隔符?

php - 在 PHP 中流解析 4 GB XML 文件

java - Java读取大文件时如何避免OutOfMemory异常

c++ - 光线追踪框相交

c - ANSI C getc 在 Linux 而不是 OS X 上导致段错误

c - 快速 'C' 库可透明地管理非常大的文件