ifstream fin加载错误

时间:2012-12-19 09:26:02

标签: c++ file visual-studio-2012 x86-64

我正在尝试加载文件,但无法获取它。这是命令..

void Apple::loadDictionary(std::vector<std::string>& ret)
{
  std::ifstream fin("words");
  if(!fin.good()){
    return;
  }
  while(!fin.eof()){
    char buffer[4096];
    fin.getline(buffer, 4096);
    std::string curr(buffer);
    ret.push_back(curr);
  }
  fin.close();
}

我已将名为words的文件添加到Visual Studio项目中。右键单击“项目名称”和“添加现有项”,然后选择单词文件。如果这是错误,请告诉我。

fin没有加载字符串,条件!fin.good()为true,程序终止。需要一些帮助。

我需要在这个中使用任何#include吗?

1 个答案:

答案 0 :(得分:1)

听起来好像没有将文件复制到项目目录中,只需使用 Add Existing 添加到项目中就不会自动将物理文件复制到项目目录中它只是添加一个链接它。

首先将文件复制到项目目录,然后执行添加现有,或者如果您希望文件保留在原位,请使用程序中的绝对路径。

另请注意,项目中的“文件夹”不必是驱动器上的物理文件夹,但应该更多地视为过滤器。例如“标头文件