如何超载CIN读取文件
How to overload cin to read file
可能的重复:
操纵输入文件流
C 如何超载CIN读取文件
我正在尝试使用操作员超载以下。
struct myself
{
string myname;
}
istream &operator>> (istream &stream, myself &mm)
{
cout << "Enter my name:";
stream >> mm.myname;
return stream;
}
int main()
{
myself mm;
cin >> mm;
cout << mm.myname;
}
及其工作,能够回应我实际键入的内容。
现在我试图继续进行
cout << "Enter file name to read: ";
//assume user type myfile.txt
cin >> readFile;
如何使CIN超载以使其读取文件。
考虑我的文件像
woryextdocument.txt包含
之类的数据Map2D, [3, 2]
Dot3D, [25, -69, -33], [-2, -41, 58]
Map3D, [6, 9, -50]
Map2D, [3, 2]
Dot3D, [7, -12, 3], [9, 13, 68]
Map3D, [6, 9, 5]
Map2D, [3, 2]
Dot3D, [70, -120, -3], [-29, 1, 268]
Dot3D, [7, 12, 3], [-9, 13, 68]
Map3D, [1, 3, 8]
Dot2D, [5, 7], [3, 8]
,然后我想cout << "Number of records read: " << number << endl;
然后进行返回流,当CIN读取文件
尝试这样的尝试:希望它会有所帮助
istream &operator>> (istream &in, char* fname){
inFile.open(fname);
char ch1;
while (inFile.get(ch1)) {
cout<<ch1;
}
}
相关文章:
- 从 cin 读取不会返回整个输入字符串
- 使用 cin 读取空行
- 为什么从 std::cin 读取输入后右括号字符的值有时不是")"?
- 如何从 cin 读取直到输入非数字内容?
- 如何从文件中读取,然后继续从cin读取?
- 使用 cin 读取大型输入时程序冻结
- 使用 cin 读取逗号分隔的整数对 (x,y) 和任意空格
- 从 cin 读取 PNG 文件
- 从cin读取不同类型的输入
- 将大写字母(从 cin 读取)更改为小写
- 如何超载CIN读取文件
- 多次从 std::cin 读取 -- Linux 和 Mac OS X 上的行为不同
- 如何清除cin读取的内容
- 我希望 cin 读取直到'n'但我无法使用 getline
- 如何终止从 cin 读取
- 将 getline 从 cin 读取到字符串流 (C++)
- 使用 cin 读取字符串时出错
- 如何使用 cin 读取带有空格的输入,直到到达制表符
- 是否可以从 cin 读取空字符串,并且仍然可以从 cin.good() 中获取 true
- 使用cin读取格式化输入