Qt-获取系统路径-系统目录-常用目录-windows-mac-android-linux-ios_qt如何获得桌面路径-程序员宅基地

技术标签: C++  Qt  linux  macos  Qt-获取系统路径  android-linux  windows-mac  

1.基本用法

#include <QStandardPaths>
void PrintSystemFolder()
{
    
    qDebug() << "系统字体目录路径:" << QStandardPaths::standardLocations(QStandardPaths::FontsLocation);
    qDebug() << "系统桌面目录路径:" << QStandardPaths::standardLocations(QStandardPaths::DesktopLocation);
    qDebug() << "用户文档目录路径:" << QStandardPaths::standardLocations(QStandardPaths::DocumentsLocation);
    qDebug() << "用户音乐目录路径:" << QStandardPaths::standardLocations(QStandardPaths::MusicLocation);
    qDebug() << "用户图片目录路径:" << QStandardPaths::standardLocations(QStandardPaths::PicturesLocation);
    qDebug() << "系统临时文件目录路径:" << QStandardPaths::standardLocations(QStandardPaths::TempLocation);
    qDebug() << "系统缓存目录路径:" << QStandardPaths::standardLocations(QStandardPaths::CacheLocation);
    qDebug() << "系统下载目录路径:" << QStandardPaths::standardLocations(QStandardPaths::DownloadLocation);
    qDebug() << "系统缓存目录路径:" << QStandardPaths::standardLocations(QStandardPaths::CacheLocation);
}

2.MacOS与Windows系统的目录路径

Path type macOS Windows
DesktopLocation “~/Desktop” “C:/Users/<USER>/Desktop”
DocumentsLocation “~/Documents” “C:/Users/<USER>/Documents”
FontsLocation “/System/Library/Fonts” (not writable) “C:/Windows/Fonts” (not writable)
ApplicationsLocation “/Applications” (not writable) “C:/Users/<USER>/AppData/Roaming/Microsoft/Windows/Start Menu/Programs”
MusicLocation “~/Music” “C:/Users/<USER>/Music”
MoviesLocation “~/Movies” “C:/Users/<USER>/Videos”
PicturesLocation “~/Pictures” “C:/Users/<USER>/Pictures”
TempLocation randomly generated by the OS “C:/Users/<USER>/AppData/Local/Temp”
HomeLocation “~” “C:/Users/<USER>”
DataLocation “~/Library/Application Support/<APPNAME>”, “/Library/Application Support/<APPNAME>”. “<APPDIR>/…/Resources” “C:/Users/<USER>/AppData/Local/<APPNAME>”, “C:/ProgramData/<APPNAME>”,“<APPDIR>”, “<APPDIR>/data”, “<APPDIR>/data/<APPNAME>”
CacheLocation “~/Library/Caches/<APPNAME>”, “/Library/Caches/<APPNAME>” “C:/Users/<USER>/AppData/Local/<APPNAME>/cache”
GenericDataLocation “~/Library/Application Support”, “/Library/Application Support” “C:/Users/<USER>/AppData/Local”, “C:/ProgramData”, “<APPDIR>”, “<APPDIR>/data”
RuntimeLocation “~/Library/Application Support” “C:/Users/<USER>”
ConfigLocation “~/Library/Preferences” “C:/Users/<USER>/AppData/Local/<APPNAME>”, “C:/ProgramData/<APPNAME>”
GenericConfigLocation “~/Library/Preferences” “C:/Users/<USER>/AppData/Local”, “C:/ProgramData”
DownloadLocation “~/Downloads” “C:/Users/<USER>/Documents”
GenericCacheLocation “~/Library/Caches”, “/Library/Caches” “C:/Users/<USER>/AppData/Local/cache”
AppDataLocation “~/Library/Application Support/<APPNAME>”, “/Library/Application Support/<APPNAME>”. “<APPDIR>/…/Resources” “C:/Users/<USER>/AppData/Roaming/<APPNAME>”, “C:/ProgramData/<APPNAME>”,“<APPDIR>”, “<APPDIR>/data”, “<APPDIR>/data/<APPNAME>”
AppLocalDataLocation “~/Library/Application Support/<APPNAME>”, “/Library/Application Support/<APPNAME>”. “<APPDIR>/…/Resources” “C:/Users/<USER>/AppData/Local/<APPNAME>”, “C:/ProgramData/<APPNAME>”,“<APPDIR>”, “<APPDIR>/data”, “<APPDIR>/data/<APPNAME>”
AppConfigLocation “~/Library/Preferences/<APPNAME>” “C:/Users/<USER>/AppData/Local/<APPNAME>”, “C:/ProgramData/<APPNAME>”

3.Linux系统的目录路径

Path type Linux
DesktopLocation “~/Desktop”
DocumentsLocation “~/Documents”
FontsLocation “~/.fonts”
ApplicationsLocation “~/.local/share/applications”, “/usr/local/share/applications”, “/usr/share/applications”
MusicLocation “~/Music”
MoviesLocation “~/Videos”
PicturesLocation “~/Pictures”
TempLocation “/tmp”
HomeLocation “~”
DataLocation “~/.local/share/<APPNAME>”, “/usr/local/share/<APPNAME>”, “/usr/share/<APPNAME>”
CacheLocation “~/.cache/<APPNAME>”
GenericDataLocation “~/.local/share”, “/usr/local/share”, “/usr/share”
RuntimeLocation “/run/user/<USER>”
ConfigLocation “~/.config”, “/etc/xdg”
GenericConfigLocation “~/.config”, “/etc/xdg”
DownloadLocation “~/Downloads”
GenericCacheLocation “~/.cache”
AppDataLocation “~/.local/share/<APPNAME>”, “/usr/local/share/<APPNAME>”, “/usr/share/<APPNAME>”
AppLocalDataLocation “~/.local/share/<APPNAME>”, “/usr/local/share/<APPNAME>”, “/usr/share/<APPNAME>”
AppConfigLocation “~/.config/<APPNAME>”, “/etc/xdg/<APPNAME>”

4.Android、IOS系统的目录路径

Path type Android iOS
DesktopLocation “<APPROOT>/files” “<APPROOT>/Documents/Desktop”
DocumentsLocation “<USER>/Documents”, “<USER>/<APPNAME>/Documents” “<APPROOT>/Documents”
FontsLocation “/system/fonts” (not writable) “<APPROOT>/Library/Fonts”
ApplicationsLocation not supported (directory not readable) not supported
MusicLocation “<USER>/Music”, “<USER>/<APPNAME>/Music” “<APPROOT>/Documents/Music”
MoviesLocation “<USER>/Movies”, “<USER>/<APPNAME>/Movies” “<APPROOT>/Documents/Movies”
PicturesLocation “<USER>/Pictures”, “<USER>/<APPNAME>/Pictures” “<APPROOT>/Documents/Pictures”, “assets-library://”
TempLocation “<APPROOT>/cache” “<APPROOT>/tmp”
HomeLocation “<APPROOT>/files” “<APPROOT>” (not writable)
DataLocation “<APPROOT>/files”, “<USER>/<APPNAME>/files” “<APPROOT>/Library/Application Support”
CacheLocation “<APPROOT>/cache”, “<USER>/<APPNAME>/cache” “<APPROOT>/Library/Caches”
GenericDataLocation “<USER>” “<APPROOT>/Documents”
RuntimeLocation “<APPROOT>/cache” not supported
ConfigLocation “<APPROOT>/files/settings” “<APPROOT>/Library/Preferences”
GenericConfigLocation “<APPROOT>/files/settings” (there is no shared settings) “<APPROOT>/Library/Preferences”
DownloadLocation “<USER>/Downloads”, “<USER>/<APPNAME>/Downloads” “<APPROOT>/Documents/Downloads”
GenericCacheLocation “<APPROOT>/cache” (there is no shared cache) “<APPROOT>/Library/Caches”
AppDataLocation “<APPROOT>/files”, “<USER>/<APPNAME>/files” “<APPROOT>/Library/Application Support”
AppConfigLocation “<APPROOT>/files/settings” “<APPROOT>/Library/Preferences/<APPNAME>”
AppLocalDataLocation “<APPROOT>/files”, “<USER>/<APPNAME>/files” “<APPROOT>/Library/Application Support”

5.每个枚举的功能介绍

Constant Value Description
QStandardPaths::DesktopLocation 0 返回用户的桌面目录。这是一个通用值。在没有桌面概念的系统上,这与 QStandardPaths::HomeLocation 相同。
QStandardPaths::DocumentsLocation 1 返回包含用户文档文件的目录。这是一个通用值。返回的路径永远不会为空。
QStandardPaths::FontsLocation 2 返回包含用户字体的目录。这是一个通用值。请注意,安装字体可能需要额外的、特定于平台的操作。
QStandardPaths::ApplicationsLocation 3 返回包含用户应用程序(可执行文件、应用程序包或它们的快捷方式)的目录。这是一个通用值。请注意,安装应用程序可能需要额外的、特定于平台的操作。此目录中的文件、文件夹或快捷方式是特定于平台的。
QStandardPaths::MusicLocation 4 返回包含用户音乐或其他音频文件的目录。这是一个通用值。如果不存在特定于音乐文件的目录,则返回用于存储用户文档的合理回退。
QStandardPaths::MoviesLocation 5 返回包含用户电影和视频的目录。这是一个通用值。如果不存在特定于电影文件的目录,则返回用于存储用户文档的合理回退。
QStandardPaths::PicturesLocation 6 返回包含用户图片或照片的目录。这是一个通用值。如果不存在特定于图片文件的目录,则返回用于存储用户文档的合理回退。
QStandardPaths::TempLocation 7 返回可以存储临时文件的目录。返回的值可能是特定于应用程序的,在此用户的其他应用程序之间共享,甚至是系统范围的。返回的路径永远不会为空。
QStandardPaths::HomeLocation 8 返回用户的主目录(与 QDir::homePath() 相同)。在 Unix 系统上,这等于 HOME 环境变量。此值可能是通用的或特定于应用程序的,但返回的路径永远不会为空。
QStandardPaths::DataLocation 9 返回与 AppLocalDataLocation 相同的值。此枚举值已弃用。最好使用 AppDataLocation,因为在 Windows 上,建议使用漫游路径。
QStandardPaths::CacheLocation 10 返回应写入用户特定的非必要(缓存)数据的目录位置。这是一个特定于应用程序的目录。返回的路径永远不会为空。
QStandardPaths::GenericCacheLocation 15 返回应写入跨应用程序共享的用户特定非必要(缓存)数据的目录位置。这是一个通用值。请注意,如果系统没有共享缓存的概念,则返回的路径可能为空。
QStandardPaths::GenericDataLocation 11 返回可以存储跨应用程序共享的持久数据的目录位置。这是一个通用值。返回的路径永远不会为空。
QStandardPaths::RuntimeLocation 12 返回应该写入运行时通信文件的目录位置,例如 Unix 本地套接字。这是一个通用值。在某些系统上,返回的路径可能为空。
QStandardPaths::ConfigLocation 13 返回应写入用户特定配置文件的目录位置。这可能是通用值或特定于应用程序的值,并且返回的路径永远不会为空。
QStandardPaths::DownloadLocation 14 返回用户下载文件的目录。这是一个通用值。如果不存在特定于下载的目录,则返回用于存储用户文档的合理回退。
QStandardPaths::GenericConfigLocation 16 返回应写入多个应用程序之间共享的用户特定配置文件的目录位置。这是一个通用值,返回的路径永远不会为空。
QStandardPaths::AppDataLocation 17 返回可以存储持久应用程序数据的目录位置。这是一个特定于应用程序的目录。要获取存储要与其他应用程序共享的数据的路径,请使用 QStandardPaths::GenericDataLocation。返回的路径永远不会为空。在 Windows 操作系统上,这将返回漫游路径。这个枚举值是在 Qt 5.4 中添加的。
QStandardPaths::AppLocalDataLocation 数据位置 返回 Windows 操作系统上的本地设置路径。在所有其他平台上,它返回与 AppDataLocation 相同的值。这个枚举值是在 Qt 5.4 中添加的。
QStandardPaths::AppConfigLocation 18 返回应写入用户特定配置文件的目录位置。这是一个特定于应用程序的目录,返回的路径永远不会为空。这个枚举值是在 Qt 5.5 中添加的。

6.转载网址

感谢原作者分享。原文网址:https://cloud.tencent.com/developer/article/1932769

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_67316550/article/details/126868788

智能推荐

获取大于等于一个整数的最小2次幂算法(HashMap#tableSizeFor)_整数 最小的2的几次方-程序员宅基地

文章浏览阅读2w次,点赞51次,收藏33次。一、需求给定一个整数,返回大于等于该整数的最小2次幂(2的乘方)。例: 输入 输出 -1 1 1 1 3 4 9 16 15 16二、分析当遇到这个需求的时候,我们可能会很容易想到一个"笨"办法:..._整数 最小的2的几次方

Linux 中 ss 命令的使用实例_ss@,,x,, 0-程序员宅基地

文章浏览阅读865次。选项,以防止命令将 IP 地址解析为主机名。如果只想在命令的输出中显示 unix套接字 连接,可以使用。不带任何选项,用来显示已建立连接的所有套接字的列表。如果只想在命令的输出中显示 tcp 连接,可以使用。如果只想在命令的输出中显示 udp 连接,可以使用。如果不想将ip地址解析为主机名称,可以使用。如果要取消命令输出中的标题行,可以使用。如果只想显示被侦听的套接字,可以使用。如果只想显示ipv4侦听的,可以使用。如果只想显示ipv6侦听的,可以使用。_ss@,,x,, 0

conda activate qiuqiu出现不存在activate_commandnotfounderror: 'activate-程序员宅基地

文章浏览阅读568次。CommandNotFoundError: 'activate'_commandnotfounderror: 'activate

Kafka 实战 - Windows10安装Kafka_win10安装部署kafka-程序员宅基地

文章浏览阅读426次,点赞10次,收藏19次。完成以上步骤后,您已在 Windows 10 上成功安装并验证了 Apache Kafka。在生产环境中,通常会将 Kafka 与外部 ZooKeeper 集群配合使用,并考虑配置安全、监控、持久化存储等高级特性。在生产者窗口中输入一些文本消息,然后按 Enter 发送。ZooKeeper 会在新窗口中运行。在另一个命令提示符窗口中,同样切换到 Kafka 的。Kafka 服务器将在新窗口中运行。在新的命令提示符窗口中,切换到 Kafka 的。,应显示已安装的 Java 版本信息。_win10安装部署kafka

【愚公系列】2023年12月 WEBGL专题-缓冲区对象_js 缓冲数据 new float32array-程序员宅基地

文章浏览阅读1.4w次。缓冲区对象(Buffer Object)是在OpenGL中用于存储和管理数据的一种机制。缓冲区对象可以存储各种类型的数据,例如顶点、纹理坐标、颜色等。在渲染过程中,缓冲区对象中存储的数据可以被复制到渲染管线的不同阶段中,例如顶点着色器、几何着色器和片段着色器等,以完成渲染操作。相比传统的CPU访问内存,缓冲区对象的数据存储和管理更加高效,能够提高OpenGL应用的性能表现。_js 缓冲数据 new float32array

四、数学建模之图与网络模型_图论与网络优化数学建模-程序员宅基地

文章浏览阅读912次。(1)图(Graph):图是数学和计算机科学中的一个抽象概念,它由一组节点(顶点)和连接这些节点的边组成。图可以是有向的(有方向的,边有箭头表示方向)或无向的(没有方向的,边没有箭头表示方向)。图用于表示各种关系,如社交网络、电路、地图、组织结构等。(2)网络(Network):网络是一个更广泛的概念,可以包括各种不同类型的连接元素,不仅仅是图中的节点和边。网络可以包括节点、边、连接线、路由器、服务器、通信协议等多种组成部分。网络的概念在各个领域都有应用,包括计算机网络、社交网络、电力网络、交通网络等。_图论与网络优化数学建模

随便推点

android 加载布局状态封装_adnroid加载数据转圈封装全屏转圈封装-程序员宅基地

文章浏览阅读1.5k次。我们经常会碰见 正在加载中,加载出错, “暂无商品”等一系列的相似的布局,因为我们有很多请求网络数据的页面,我们不可能每一个页面都写几个“正在加载中”等布局吧,这时候将这些状态的布局封装在一起就很有必要了。我们可以将这些封装为一个自定布局,然后每次操作该自定义类的方法就行了。 首先一般来说,从服务器拉去数据之前都是“正在加载”页面, 加载成功之后“正在加载”页面消失,展示数据;如果加载失败,就展示_adnroid加载数据转圈封装全屏转圈封装

阿里云服务器(Alibaba Cloud Linux 3)安装部署Mysql8-程序员宅基地

文章浏览阅读1.6k次,点赞23次,收藏29次。PS: 如果执行sudo grep 'temporary password' /var/log/mysqld.log 后没有报错,也没有任何结果显示,说明默认密码为空,可以直接进行下一步(后面设置密码时直接填写新密码就行)。3.(可选)当操作系统为Alibaba Cloud Linux 3时,执行如下命令,安装MySQL所需的库文件。下面示例中,将创建新的MySQL账号,用于远程访问MySQL。2.依次运行以下命令,创建远程登录MySQL的账号,并允许远程主机使用该账号访问MySQL。_alibaba cloud linux 3

excel离散度图表怎么算_excel离散数据表格-Excel 离散程度分析图表如何做-程序员宅基地

文章浏览阅读7.8k次。EXCEL中数据如何做离散性分析纠错。离散不是均值抄AVEDEV……=AVEDEV(A1:A100)算出来的是A1:A100的平均数。离散是指各项目间指标袭的离散均值(各数值的波动情况),数值较低表明项目间各指标波动幅百度小,数值高表明波动幅度较大。可以用excel中的离散公式为STDEV.P(即各指标平均离散)算出最终度离散度。excel表格函数求一组离散型数据,例如,几组C25的...用exc..._excel数据分析离散

学生时期学习资源同步-JavaSE理论知识-程序员宅基地

文章浏览阅读406次,点赞7次,收藏8次。i < 5){ //第3行。int count;System.out.println ("危险!System.out.println(”真”);System.out.println(”假”);System.out.print(“姓名:”);System.out.println("无匹配");System.out.println ("安全");

linux 性能测试磁盘状态监测:iostat监控学习,包含/proc/diskstats、/proc/stat简单了解-程序员宅基地

文章浏览阅读3.6k次。背景测试到性能、压力时,经常需要查看磁盘、网络、内存、cpu的性能值这里简单介绍下各个指标的含义一般磁盘比较关注的就是磁盘的iops,读写速度以及%util(看磁盘是否忙碌)CPU一般比较关注,idle 空闲,有时候也查看wait (如果wait特别大往往是io这边已经达到了瓶颈)iostatiostat uses the files below to create ..._/proc/diskstat

glReadPixels读取保存图片全黑_glreadpixels 全黑-程序员宅基地

文章浏览阅读2.4k次。问题:在Android上使用 glReadPixel 读取当前渲染数据,在若干机型(华为P9以及魅族某魅蓝手机)上读取数据失败,glGetError()没有抓到错误,但是获取到的数据有误,如果将获取到的数据保存成为图片,得到的图片为黑色。解决方法:glReadPixels实际上是从缓冲区中读取数据,如果使用了双缓冲区,则默认是从正在显示的缓冲(即前缓冲)中读取,而绘制工作是默认绘制到后缓..._glreadpixels 全黑