在调试时从文件读入

时间:2011-04-04 05:11:35

标签: c++ text input ifstream

我的项目的Debug文件夹中有SOME_TEXT.TXT。当我手动转到Debug文件夹并运行应用程序时,我得到了预期的输出,并且一切都是光荣的。但是,当我在Visual Studio中调试应用程序时,txtFile.is_open()失败并且我的输出不起作用。我在其他目录中环顾四周,我看不到其他可执行文件。我甚至尝试过大量传播SOME_TEXT.TXT以防万一我错过了一个目录。有什么想法吗?

我有以下代码:

string path = "SOME_TEXT.TXT";
ifstream txtFile;
txtFile.open(path, ifstream::in);
char line[200];
if(txtFile.is_open())
{
    int lineNumber = 1;
    while(!txtFile.eof())
    {
        txtFile.getline(line, 200);
        Line * ln = new Line(line, path, lineNumber);
        lineNumber++;
        myList.addLine(ln);
    }
}
myList.printAll();

1 个答案:

答案 0 :(得分:1)

您可以在项目的上下文菜单中的属性中控制程序将运行的工作目录。然后在“调试”选项卡中。

此目录默认为可执行文件的输出目录。请注意,发布和调试的输出目录是不同的。它们通常称为“调试”和“发布”。

尝试将文本文件粘贴到Debug文件夹中。