我正在尝试读取以前成功读取的文件。 我正在通过一个库读取它,并将它原样发送到库(即“myfile.txt”)。 我知道该文件是从工作/当前目录中读取的。如何找到当前目录?
我怀疑当前/工作目录已经改变了。 如何检查当前/工作目录是什么?
我正在尝试读取以前成功读取的文件。 我正在通过一个库读取它,并将它原样发送到库(即“myfile.txt”)。 我知道该文件是从工作/当前目录中读取的。如何找到当前目录?
我怀疑当前/工作目录已经改变了。 如何检查当前/工作目录是什么?
由于您添加了visual-C++标签,因此我将建议使用标准windows函数来执行此操作。 GetCurrentDirectory
用法:
TCHAR pwd[MAX_PATH];
GetCurrentDirectory(MAX_PATH,pwd);
MessageBox(NULL,pwd,pwd,0);
使用_getcwd
获取当前工作目录。
Boost filesystem库提供了一个干净的解决方案
current_path()
这里是最具有平台无关的答案,我得到了一个前一阵子:
How return a std::string from C's "getcwd" function
这是很啰嗦,但是完全按照它应该做的事情,用一个漂亮的C++接口(例如,它返回一个字符串,而不是一个多长时间,你准确地?) - (const
)char*
)。
闭嘴MSVC的警告有关的getcwd
弃用,你可以做一个
#if _WIN32
#define getcwd _getcwd
#endif // _WIN32
有趣。你确定它不只是写出适合缓冲区的部分吗? – monoceres 2013-05-31 13:02:12