Qt 路径相关 API

📅 2026/7/10 15:01:12
Qt 路径相关 API
一、核心路径 API1. QCoreApplication::applicationFilePath()作用:获取 exe 完整绝对路径(目录 + exe 文件名)#include QCoreApplication #include QDebug QString exeFullPath = QCoreApplication::applicationFilePath(); qDebug() "exe完整路径:" exeFullPath;示例环境:exe 存放于C:\MyProjects\MyApp\bin\myapp.exe输出结果:"C:/MyProjects/MyApp/bin/myapp.exe"关键特点固定不变:不受QDir::currentPath()、文件对话框、命令行启动方式影响;包含 exe 文件名,可搭配QFileInfo拆分目录、文件名、后缀;适用场景:获取程序自身名称、校验 exe 文件、复制程序本体。2. QCoreApplication::applicationDirPath()作用:获取 exe 所在文件夹绝对路径(不含 exe 文件名,项目最常用)QString exeDir = QCoreApplication::applicationDirPath(); qDebug() "exe所在目录:" exeDir;同上环境输出:"C:/MyProjects/MyApp/bin"关键特点永久稳定,全程不会变动;用来拼接程序配套文件(加密 DLL、配置、固件、模板),规避相对路径崩溃问题;工程首选基准目录,所有内置依赖文件都基于此拼接。3. QDir::currentPath()作用:获取进程当前工作目录(相对路径的参照基准)#include QDir QString workDir = QDir::currentPath(); qDebug() "当前工作目录:" workDir;关键特点动态可变:打开文件对话框、命令行启动、QDir::setCurrent()都会修改;所有裸写相对路径(1.txt、Cfg/para.ini)都以此目录为基准查找;风险:直接用相对路径加载依赖,目录变更后文件丢失、程序崩溃。4. QFileInfo 文件信息解析类QFileInfo 是 Qt 框架中的一个类,它提供了文件和目录的各种信息,核心接口包含:1)fileName():返回不包含路径的完整文件名2)absoluteFilePath():返回文件或目录的完整绝对路径3)absolutePath():返回文件 / 目录所在的绝对目录路径(不含文件名)4)size():返回文件大小,单位字节5)exists