提问人:Raffaello 提问时间:9/10/2023 更新时间:9/10/2023 访问量:18
有没有办法用 basic_streambuf 来 std::basic_istream::get 来读取 Delimeter Char?
is there a way to std::basic_istream::get with a basic_streambuf to also read the delimeter char?
问:
鉴于
#include<string>
#include<stringstream>
#include <fstream>
int main(int argc, char* args[])
{
std::fstream file("MyFile.txt", std::fstream::in);
std::stringbuf sb;
file.get(sb, '\0');
file.get(); // (1) wasting the delimiter char
return 0;
}
基本上,我正在寻找的是避免做声明,因为它看起来不整洁。(1)
(近似的)替代解决方法可以是 ,但不是动态分配的,因为它需要固定大小的缓冲区,因此在使用 .getline
stringbuf
std::basic_streambuf
有没有办法在不强迫下一条语句的情况下读取分隔符 char 来做一个浪费?std::basic_istream::get(basic_streambuf&, ...)
.get
答: 暂无答案
评论
getline
seekg(1, fstream::cur)
getline