在带有转义反斜杠的窗口上打印增强路径

时间:2018-01-28 13:09:39

标签: c++ boost boost-filesystem

我需要打印一个路径(存储为boost文件系统路径)到文件,以便稍后解析回路径。 解析器期望转换Windows平台中的路径,因此路径如

c:\path\to\file

将作为

出现在文件中
c:\\path\\to\\file

升压路径中是否有方法可以执行此操作?或者我是否需要处理string()方法的输出以添加转义?

1 个答案:

答案 0 :(得分:3)

您是否听说过std::quoted

这样的事情可以很方便。或者,使用shell的强大功能(例如Escape FileNames Using The Same Way Bash Do It

<强> Live On Coliru

melt(B)[,.SD[value == max(value),.(value,name)],by = variable]

   variable value name
1:     sam1    94 obs3
2:     sam2    95 obs2
3:     sam3    88 obs1

打印

#include <iomanip>
#include <iostream>

int main() {
    std::cout << std::quoted(R"(c:\path\to\file)") << std::endl;
    std::cout << std::quoted("c:\\path\\to\\file") << std::endl;
}
  

注意:还会显示raw string literal