我正在开发一个 Windows C++ 应用程序,我在其中获得类似于 file:///C:/test 1/file.foo
的 URI。现在我想要例如使用 ifstream
打开该 URI。
Windows 上是否有可用的 C/C++ API 来转换此类路径?
我的 Google Foo 今天似乎很弱。
最佳答案
有multiple文件 URI“版本”,因此您不应该 parse自己动手吧,一些the APIs are broken也是如此。
如果您只想要 Windows 风格的路径,请调用 PathCreateFromUrl
.
如果您不想转换路径,则必须使用 CreateURLMonikerEx
或 SHParseDisplayName
(带有绑定(bind)上下文),但最终会得到 Windows 改为 IStream
。
关于c++ - 将 URI 转换为路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42858097/