2011-04-04 50 views
0

我在我的项目的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

为什么不打印出程序运行的目录?见例如http://stackoverflow.com/questions/143174/c-c-how-to-obtain-the-full-path-of-current-directory – 2011-04-04 05:16:24

回答

1

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

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

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

+0

谢谢。我用它来看到我需要解决方案目录中的文件,而不是反直觉的Debug文件夹。只要它可以工作,我可以调试这些都是重要的。 – Pete 2011-04-04 05:35:39