《朱老師物聯網大講堂》學習筆記
檔案屬性,
檔案的屬性資訊,只能被專用的api開啟看到,
常用的api有,stat,fstat,lstat,
同時stat也是乙個shell命令,其內部呼叫的也是stat,
int stat(const char *path, struct stat *buf);
int fstat(int fd, struct stat *buf);
int lstat(const char *path, struct stat *buf);
fstat是從記憶體中讀取,stat是從硬碟讀取,
lstat與上面的差別是,對於符號鏈結檔案,stat和fstat檢視的都是符號鏈結檔案指向的檔案,lstat檢視的是符號鏈結檔案本身的屬性個,
struct stat {
dev_t st_dev; /* id of device containing file */
ino_t st_ino; /* inode number */
mode_t st_mode; /* protection */
nlink_t st_nlink; /* number of hard links */
uid_t st_uid; /* user id of owner */
gid_t st_gid; /* group id of owner */
dev_t st_rdev; /* device id (if special file) */
off_t st_size; /* total size, in bytes */
blksize_t st_blksize; /* blocksize for filesystem i/o */
blkcnt_t st_blocks; /* number of 512b blocks allocated */
time_t st_atime; /* time of last access */
time_t st_mtime; /* time of last modification */
time_t st_ctime; /* time of last status change */
//這裡面的一些屬性,某些檔案用不到
struct stat buf;
ret = stat( name, &buf );
stat a.out,
即可檢視檔案屬性,
即檔案讀寫緩衝區大小,
struct stat結構體,
包含在sys/stat.h中宣告,
Qt獲取檔案屬性
在qt中有qfileinfo類專門提供了獲取檔案資訊的各種介面,比如檔名稱,位置資訊,檔案的許可權,目錄,檔案或符號連線,檔案大小,建立時間,最後修改時等等,下面通過 來看一些具體的屬性獲取。ifndef mainwindow h define mainwindow h include qt beg...
獲取檔案屬性函式
表頭檔案 include 函式定義 int stat const char file name,struct stat buf 函式說明 通過檔名filename獲取檔案資訊,並儲存在buf所指的結構體stat中 返回值 執行成功則返回0,失敗返回 1,錯誤 存於errno 需要include er...
獲取檔案屬性 stat lstat fstat
一 函式原型 include include include int stat const char path,struct stat buf int fstat int fd,struct stat buf int lstat const char path,struct stat buf 二 引...