我有一个简单数字的文件,例如:
66
或
126
如何在C ++中将其读取为int
值?
请注意,该文件可能还包含一些空格,或在>>之后输入。
我开始是这样的:
int ReadNumber()
{
fstream filestr;
filestr.open("number.txt", fstream::in | fstream::app);
filestr.close()
}
如何继续?
感谢。
答案 0 :(得分:5)
我真的不知道为什么人们只在想要输入时使用带有设置标志的fstream。
#include <fstream>
using namespace std;
int main() {
ifstream fin("number.txt");
int num;
fin >> num;
return 0;
}
答案 1 :(得分:4)
int ReadNumber()
{
fstream filestr;
int number;
filestr.open("number.txt", fstream::in | fstream::app);
filestr >> number;
return number;
} // filestr is closed automatically when it goes out of scope.
答案 2 :(得分:2)
这是一个巧妙的技巧:您可以使用freopen
重定向标准i / o。
#include <iostream>
using namespace std;
int readNumber(){
int x;
cin>>x;
return x;
}
int main(){
freopen ("number.txt","r",stdin);
cout<<readNumber();
}