在我的C ++程序中,我正在使用dplyr
。一年前,该计划运行良好,但现在ifstream("/etc/mtab", ios::ate|ios:in)
正在返回false。通过挖掘我发现ifstream::is_open()
是/etc/mtab
- 更新 -
/proc/mounts
再次成为/proc/mounts
的符号链接,这是实际文件。我无法打开这个想法我以root用户身份运行程序。因此,ifstream可能会遵循符号链接,并且无法打开/proc/self/mounts
答案 0 :(得分:1)
尽管没有直接回答如何使用m.col
来解决符号链接,但是文件系统库是introduced by C++ 17(在打开此问题时不可用)
它可以通过以下方式处理符号链接:
std::filesystem::read_symlink
std::filesystem::copy_symlink
std::filesystem::create_symlink
std::filesystem::is_symlink
请注意,文件系统库也是available in boost