C ++ Visual Studio不会读取.txt文件

时间:2016-04-27 08:33:25

标签: c++ visual-studio-2010 visual-studio-2012 terminal

我试图从Visual Studio中的命令行参数中读取.txt文件的每一行。这是我一直在使用的代码:

ifstream inFile(argv[2]);     //read text file indicated by argv[2]

if (inFile.is_open() && inFile.good())
{
    string line = "";
    while (getline(inFile, line))
    {
        cout << line << '\n';
    }

}

然而,每当我编译这段代码时,我总是会得到垃圾字符。有趣的是,代码工作得很好,并且当我直接从终端运行它时,应该做它应该做的事情。只有当我使用VS时才能解决这个问题。如果发生这种情况,我将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

当您在Visual Studio中运行时,我预计(当前工作目录可能为99.9%)是不同的。有两个简单的选项。

  1. 将您尝试打开的文件放在Debug / Release文件夹中 在Visual Studio中(或从其运行的任何地方)
  2. 将argv [2]中提供的路径更改为完整路径或相对路径 适用于Visual Studio。