【发布时间】:2012-01-13 03:27:21
【问题描述】:
有没有办法使用Boost.Filesystem 获取平台的路径分隔符?通过路径分隔符,我的意思是 / 用于 Unix,\ 用于 Windows。
我已经知道我可以使用boost::filesystem::path::operator/ 将两条路径与适当的分隔符连接在一起。但我只想要/ 或\。
我也知道我可以使用#ifdef _WIN32,但我希望 Boost.Filesystem 告诉我适当的分隔符。
编辑: 我想使用 Boost.Filesystem API 的version 3,就像在 Boost 1.48 中使用的那样。
【问题讨论】:
-
天啊!我一直在寻找一个可以直接给我路径分隔符的 API,并没有想到简单地使用:
boost::filesystem::path("/").native() -
有人可以确认
boost::filesystem::path("/").native()在Windows 上返回"\\"吗? -
请注意,Windows 接受
/作为 pafh 分隔符。 -
@Xeo:谢谢,这让我的问题对我目前正在做的事情毫无意义。但我还是很好奇
boost::filesystem::path("/").native()在 Windows 上的行为。 -
WinXP,VS2010,boost 1.48.0,返回值为“/”。
标签: c++ boost boost-filesystem