使用boost :: filesystem扩展用户路径
boost::filesystem
是否有扩展以用户主目录符号(Unix上的~
)开头的路径的功能,类似于Python中提供的os.path.expanduser函数?使用boost :: filesystem扩展用户路径
回答:
号
但是你可以做这样实现:
namespace bfs = boost::filesystem; using std;
bfs::path expand (bfs::path in) {
if (in.size() < 1) return in;
const char * home = getenv ("HOME");
if (home == NULL) {
cerr << "error: HOME variable not set." << endl;
throw std::invalid_argument ("error: HOME environment variable not set.");
}
string s = in.c_str();
if (s[0] == '~') {
s = string(home) + s.substr (1, s.size() - 1);
return bfs::path (s);
} else {
return in;
}
}
而且,看看通过@WhiteViking建议similar question。
以上是 使用boost :: filesystem扩展用户路径 的全部内容, 来源链接: utcz.com/qa/258241.html