C ++文件名不起作用

时间:2013-05-11 19:35:58

标签: c++ file-io

我正在尝试使用变量文件名来加载文件。所有这些文件都存储在我的程序的同一个子目录中。我这样做是这样的:

int fileNum = whatever;
string fName;
stringstream ss;
ss << "Files\\Foo" << fileNum << ".csv";
fName = ss.str();

fstream foo (fName.c_str());

我遇到的问题是编译器拒绝将“\\”替换为“\”。当然,使用'\'会产生编译错误,但是当我调试时,watch会显示fName的值为“Files \\ Foo1.csv”,当然不会打开任何内容。

1 个答案:

答案 0 :(得分:0)

问题与斜杠无关。调试器在手表中转义斜杠,所以你应该看到\\,这里没有错。您可以cout文件名以查看它是否正确。

很可能您的工作目录中没有指定的文件。检查您的IDE设置:可执行文件的目录是什么(通常称为输出路径)以及调试期间工作目录是什么。

也可以尝试在没有IDE的情况下运行程序。