有没有办法将(明显的字节)文件传输到Linux上的C ++应用程序中。但是,我不想只使用getline()
,而是只想读取每个字节一次。例如,我不想使用getline()
因为它会读取所有字节直到'\ n'然后我还必须重新读取通过getline()
给我的字节,所以字节被读取两次。我只想在每个字节中“迭代”一次。
什么是性能最佳的技术,一次读取PAGE_SIZE字节?任何示例代码都是最受欢迎的!
答案 0 :(得分:4)
不要忘记std::cin
属于std::istream
类型。您可以使用标准get()
一次检索char
:
char nextVal = std::cin.get();
要一次性阅读PAGE_SIZE
字节,请改用read()
:
char *buffer = new char[PAGE_SIZE];
std::cin.read(buffer, PAGE_SIZE);
请务必在阅读后始终检查错误情况和EOF。