这是我的代码:
fs::path datadir = ...;
std::string dataDirOption((boost::format("--datadir=%1%") % datadir).str());
Run Code Online (Sandbox Code Playgroud)
对于datadir=="c:/db"
我来说dataDirOption=="--datadir=\"c:/db\""
,而不是"--datadir=c:/db"
boost::filesystem::path
格式化时是否可以告诉跳过引号?
现在,我知道我可以代替datadir.string()
的datadir
,摆脱这样的报价,但我想知道我是否可以这样做,没有额外的字符串。
谢谢。
不,不是,这是Boost Framework版本1.47.0上的错误文件,尚未确定何时修复。
但是,解决方法是:
std::cout << path("/foo/bar.txt").filename().string()
Run Code Online (Sandbox Code Playgroud)