我正在尝试使用cin.get()读取重定向文件。这是我尝试使用seekg的尝试,但它无法正常工作。
int temp;
while(cin.get(temp))
{
//code here
}
cin.seekg(0,ios::beg);
if(cin.fai())
{
cout << "failed";// it fails
}
答案 0 :(得分:0)
通常,重定向文件不支持seek
操作,因为输入经过stdin
(或等效),不支持“四处移动”操作。这是因为尽管可能存在一个小的内部缓冲区,但期望是“一旦读取了某些东西,它就不再可用于输入”。
如果你想要来回走动,可以直接打开文件,也可以创建自己的缓冲区(或者找一种只读一次输入的方法!)