C ++:读取“非txt”文件

时间:2014-05-05 20:38:34

标签: c++ ifstream

我有这个文件u.user,它有一些关于用户的数据,格式如下:

835 | 44 | F |执行| 11577
836 | 44 | M |艺术家| 10018

这是一个基本上是文本文件,但扩展名为.user。我一直在尝试使用ifstream和getline方法一次读取一行并将它们存储在某种数据结构中,但它似乎不起作用。我得到错误:

  

userbaseGM.cpp:15:18:错误:变量âstd::ifstreammyfileâ有初始化程序但是类型不完整     ifstream myfile(“u.user”);

我的代码是:

int main() {
    //template<typename T> 
    //map<T,T> userMap;
    string line; 
    ifstream myfile ("u.user");
    if (myfile.is_open()) { 
        while ( getline (myfile,line) ) { 
            cout << line << '\n'; 
        } 
        myfile.close(); 
    } else cout << "Unable to open file";
}

有关我应该做什么的任何建议吗?

谢谢,

1 个答案:

答案 0 :(得分:4)

&#34;不完整类型&#34;:您提供的某些头文件提供了类的前向声明,但您从未包含真正的定义。

添加

#include <fstream>

靠近文件顶部,然后重试。