在Linux嵌入式系统中,经常会使用Qt来读写一个文件,判断一个文件是否存在,具体如何实现呢?

首先,要使用linux系统中相关的头文件:

#include #include #include 

其次,判断路径是否存在,

if(!dir.exists()){mkdir("/etc/Test",0777);}

判断文件是否存在,这时会用到linux下的access()函数,检查文件访问权限与存在性,用的头文件unistd.h

int isExist = access("/etc/myfile.conf",F_OK);返回错误值:EACCES:一个或多个访问模式位(R_OK, W_OK, X_OK)被设置,但是文件不允许这种访问。R_OK就是可读,W_OK可写,F_OK文件存在ELOOP:解析pathname时遇到了太多的符号链接。ENAMETOOLONG:pathname太长。ENOENT:文件或目录不存在。ENOTDIR:pathname的一部分不是目录。EROFS:在只读文件系统上尝试写入文件。EFAULT:pathname指向的内存区域在进程的