我正在开发一个Windows C ++应用程序,在那里我得到一个类似于file:///C:/test 1/file.foo
的URI。现在我想要例如用ifstream
打开该URI。
Windows上是否有可用于转换此类路径的C / C ++ API?
我的Google Foo今天似乎很弱。
答案 0 :(得分:2)
PathCreateFromUrl():
https://msdn.microsoft.com/en-us/library/bb773581(v=vs.85).aspx
答案 1 :(得分:2)
有multiple个文件URI“版本”,所以你不应该自己parse,有些the APIs are broken。
如果您只想要Windows样式路径,请致电PathCreateFromUrl
。
如果您不想转换路径,则必须使用CreateURLMonikerEx
或SHParseDisplayName
(带有绑定上下文),但最后会使用Windows IStream
。< / p>