如何在使用eclipse CDT调试时访问文本文件
how to access a text file while debugging with eclipse CDT
我编写这段代码是为了访问eclipse CDT中的文件
ifstream inFile;
ofstream outFile;
string next;
inFile.open("input.txt");
if (inFile.fail())
{
cout << "nCould not open input.txt";
exit(1);
}
问题是当我尝试调试我的应用程序或从eclipse内运行我的应用程序时,它找不到input.txt文件。当我从控制台运行我的应用程序时,它工作正常并打开文件。我需要调试应用程序,但不能,因为某些原因,eclipse ide找不到文件。
我应该把文件放在哪里?
相对路径可能存在问题。input.txt
是否在项目的根目录中?Eclipse将项目的顶级目录作为工作目录。如果您将代码中的"input.txt"
替换为完全限定的文件名,那也应该可以工作。
除了移动源输入文件,您还可以考虑更改启动应用程序的工作目录。
通过设置"Run Configurations"> [The Run]> "Arguments"选项卡> "Working directory"从"${workspace_loc:[Project Name]}"改为"${workspace_loc:[Project Name]}/Release",这是Eclipse通常使用的二进制目标目录。
编写一个创建文件的测试程序,例如"Here_I_Am.txt"。
找到此目录的目录将是可执行文件用作默认目录的目录。
在文件名中添加相应的路径,相对于"Here_I_Am.txt"文件。或者将文本文件放到与"Here_I_Am.txt"相同的目录
我发现在Eclipse中,将文件放在项目的根目录中应该可以让它加载。但是,如果您想从命令行运行它,则该文件需要与可执行文件位于相同的文件夹中(例如Debug/在项目文件夹中)。
应该可以将文件拖放到Eclipse项目中。只要确保你选择了复制文件的选项,而不是链接到它。
取消选择use default按钮后,选择包含二进制文件的文件夹。二进制文件可以在Run configurations > Arguments > working directory
目录下找到
- 在qt创建器中调试时如何访问字符串变量的完整值?
- Visual Studio图形调试器引发读取访问冲突异常
- 使用向量的函数崩溃,调试器说访问冲突读取位置
- 如何从Qt Creator中的调试助手访问模板值参数?
- 为什么在发布模式下无法访问 for 循环,但在调试中它工作正常
- 启用 MSVC 调试迭代器时堆栈分配器访问冲突
- 在VS2017上调试简单程序时访问冲突(RtlActivateActivationContextUnsafeFast)
- GDB 调试器访问未找到的文件
- 调试C 代码时,访问违规错误
- 如何调试C++非托管代码中的较低级别文件访问异常/崩溃
- 调试对释放内存的非法访问
- VS 2010中的C++调试访问冲突
- 在调试F5上拒绝c++vs2010访问
- 调试优先级队列程序时出现访问冲突错误
- 从 vector 访问时,我的可变类的属性不会更改。(调试中)
- 仅在调试时std::string析构函数中存在访问冲突
- C++2D矢量声明和来自调试器的元素访问
- 如何在使用eclipse CDT调试时访问文本文件
- 调试访问冲突
- 调试器无法访问库代码(GDCM)