我正在使用Ubuntu 12.04 LTS和10.04 LTS平台进行工作,使用QDir :: mkPath时出现问题。
我尝试使用mkPath创建路径,例如/john/play/games,然后将文件game.htm复制到/home/john/play。复制文件后,我将文件权限设置为rwxr---,以便第三方应用程序可以读取文件game.htm。但目录/john,/john/play和/john/play/games的权限是drwxr-x--,因此其他应用程序和其他用户无法读取文件game.htm。
我还观察到,在另一个应用程序中,相同的QDir :: mkpath创建的目录具有drwxr-xr-x权限。我想了解QDir :: mkpath创建目录的权限,并如何控制或设置权限。
我还观察到,在另一个应用程序中,相同的QDir :: mkpath创建的目录具有drwxr-xr-x权限。我想了解QDir :: mkpath创建目录的权限,并如何控制或设置权限。
/usr/share/
或者其他正确的位置。 - sashoalmQDir::mkpath
通过调用操作系统提供的 API 来工作。它的工作方式与从 shell 调用mkdir -p
相同。它完全依赖于操作系统。你读了我给你的链接吗? - sashoalmQDir::mkpath
来实现,因为它需要跨平台。想一想,它需要在Windows上工作,这里甚至没有执行权限,也需要在塞班系统上工作。它只能做到最小公分母。换句话说,它总是使用给定操作系统的默认权限。调整它们的唯一方法是使用UNIX特定的API,顺便说一下,你可以这样做。 - sashoalm