data.txt文件内容: a b x c s d f g h w
下面是代码:
#include <iostream>
#include <fstream>
#include<string>
using namespace std;
int main()
{
char num[10];
ifstream file;
file.open("data.txt");
if (file.is_open())
{
file >> num;
}
else
cout << "读取错误!" << endl;
for (int j = 0; j < 10; j++)
cout << num[j] << " ";
file.close();
cin.get();
return 0;
}
输出:
读取错误!
?
检查下你的txt文件的格式,你用记事本打开,选择另存为,确保编码选择 ANSI。否则对于utf,c++无法识别文件头,就会错误了。
还有你缓冲区明显太小,你的文件有19个字符加上结束符号,你起码得char num[20];
错误原因:file.open("data.txt");这样写的话默认你的txt文件和工程是在同一个目录,但是此时程序运行却未打开文件,说明你的txt文件和工程并不是在同一个目录,你可以将txt文件的完整路径写入就可以打开文件了。
我使用VS2015运行的,但是需要注意一点,txt文件存放路径: