我正在使用Visual Studio 2013 TR2文件系统库。我在将UNC路径转换为字符串时看到了一个错误:
#include "StdAfx.h"
#include <filesystem>
#include <iostream>
//------------------------------------------------------------------------------
int _tmain(int argc, _TCHAR* argv[])
{
namespace fs = std::tr2::sys;
fs::path fsPath = "//server/dir";
std::string sPath = fsPath;
std::cout << sPath.c_str() << "\n";
}
这将输出“\ server \ dir”,而不是“\\ server \ dir”。
是否有修复或解决方法?我做错了吗?
答案 0 :(得分:0)
我发现了一个适用于我的解决方法。如果我使用
sPath = fsPath.string();
我现在可以将该字符串传递给std :: ifstream构造函数。路径字符串将是“// server / dir”而不是“\\ server \ dir”。