C++读取文件失败求教。。。。

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文件存放路径:
图片说明