2009-12-02 11 views
9

¿Tiene Qt alguna funcionalidad independiente de la plataforma para aceptar rutas como "~/miarchivo"?Qt: Expand ~ al directorio de inicio

Sé acerca de wordexp, pero sería bueno con una envoltura independiente de la plataforma.

Editar:

Gracias a todos por las respuestas. "~/myfile" fue solo un ejemplo. Lo que busco es una funcionalidad para manejar rutas de archivos, ya que podría escribir en la línea de comandos. Entonces en Linux, debería aceptar "~/myfile", "~ otheruser/hisfile", "$ VAR/file" etc. En Windows, debería aceptar "% HOMEDIR% \ myfile" etc.

Respuesta

10

Probablemente podría simplemente reemplace la tilde con el resultado de QDir::homePath()? Referencia here.

+4

Pero _only_ si el '' ~ es al principio. –

+1

Debe asegurarse de que solo se hace cuando ~ está al inicio de la ruta y seguido de un separador de ruta. También está el tema de rutas como "~ foo/myfile" que deberían expandirse a myfile debajo de la casa de foo. No estoy seguro de lo fácil que sería manejarlo fuera de un entorno * nix donde es trivial consultar el directorio de inicio de otro usuario. – jamessan

Cuestiones relacionadas