C++ ifstream-fin加载错误

C++ ifstream-fin加载错误,c++,file,visual-studio-2012,x86-64,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 cu

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

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();
}
void Apple::loadDictionary(std::vector&ret)
{
标准::ifstream fin(“文字”);
如果(!fin.good()){
返回;
}
而(!fin.eof()){
字符缓冲区[4096];
fin.getline(缓冲区,4096);
std::字符串curr(缓冲区);
后推(当前);
}
fin.close();
}
我已将名为words的文件添加到VisualStudio项目中。右键单击项目名称并添加现有项,然后选择单词file。让我知道这是否是错误

fin不加载产生条件的字符串
!fin.good()
为true,程序终止。我需要一些帮助


我是否需要使用任何#include in this???

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

而是先将文件复制到项目目录中,然后添加现有文件,或者如果希望文件保持不变,请在程序中使用指向该文件的绝对路径


还请注意,项目中的“文件夹”不一定是驱动器上的物理文件夹,但更应该被视为过滤器。e、 g.“头文件”

您确定程序的工作目录与文件所在的目录相同吗?查看项目/解决方案属性以检查/设置工作目录。此外,您似乎正在加载没有扩展名的文件。不是“words.txt”之类的吗?不是。。它只是一个没有扩展名的Word文件。。大约有100万个单词,每行一个单词。同时(!fin.eof())??为什么不改为
while(fin.getline(buffer,4096))
呢?检查可执行文件运行在哪个目录中。我将“words”文件添加到项目文件夹及其工作目录中的所有子文件夹中!!谢谢大家帮我做这件事。。。