Qt:将~展开到主目录

Qt:将~展开到主目录,qt,path,expansion,tilde,Qt,Path,Expansion,Tilde,Qt是否有任何平台无关的功能来接受像“~/myfile”这样的路径 我知道,但是如果有一个独立于平台的包装器就好了 编辑: 谢谢大家的回复。“~/myfile”只是一个例子。我想要的是处理文件路径的功能,就像您可以在命令行上编写的那样。因此,在Linux上,它应该接受“~/myfile”、“~otheruser/hisfile”、“$VAR/file”等。在Windows上,它应该接受“%HOMEDIR%\myfile”等。您可能只需要用QDir::homePath()的结果替换波浪号即可?参考

Qt是否有任何平台无关的功能来接受像“~/myfile”这样的路径

我知道,但是如果有一个独立于平台的包装器就好了

编辑:


谢谢大家的回复。“~/myfile”只是一个例子。我想要的是处理文件路径的功能,就像您可以在命令行上编写的那样。因此,在Linux上,它应该接受“~/myfile”、“~otheruser/hisfile”、“$VAR/file”等。在Windows上,它应该接受“%HOMEDIR%\myfile”等。

您可能只需要用
QDir::homePath()的结果替换波浪号即可?参考。

我认为绝对路径()是执行此操作的方法。

但仅当
~
位于路径的开头时。您应该确保仅当~位于路径的开头并后跟路径分隔符时才执行此操作。还有像“~foo/myfile”这样的路径问题,它应该扩展到foo主页下的myfile。不确定在*nix环境之外处理有多容易,在*nix环境中查询另一个用户的主目录很简单。文档中没有提到tilde扩展。