函數與 r函數 這兩個函數在往本地存儲數據創建新的文件夾時用到 是文件的路徑名 + 文件名(或者只是路徑名) :指定access的作用,取值如下: F_OK 值為0,判斷文件是否存在 X_OK 值為1,判斷對文件是可執行許可權 W_OK 值為2,判斷對文件是否有寫許可權 R_OK 值為4 ...
access
函數與mkdi
r函數
這兩個函數在往本地存儲數據創建新的文件夾時用到
std::string file_path1 = "./image_data/front_middle/" + std::to_string(time_stamp_) + ".jpg";
if(access(file_path1,0)==-1) // this dir is not exist .
if(mkdir(file_path1,0744)==-1)
std::cout<<"The data folder create error!"<<std::endl<<file_path1<<std::endl;
access
#include<unistd.h>
int access(const char* pathname, int mode);
pathname
是文件的路徑名 + 文件名(或者只是路徑名)
mode
:指定access的作用,取值如下:
F_OK 值為0,判斷文件是否存在
X_OK 值為1,判斷對文件是可執行許可權
W_OK 值為2,判斷對文件是否有寫許可權
R_OK 值為4,判斷對文件是否有讀許可權
註:後三種可以使用或“|”的方式,一起使用,如W_OK|R_OK
返回值:成功0(存在),失敗-1(不存在)
mkdir
#include <stdio.h>
int mkdir(const char *pathname, mode_t mode);
pathname
是文件的路徑名
mode
:定義所新建目錄的許可權
返回值:創建失敗返回-1,創建成功返回0
char daystr[20];
timeval tv;
gettimeofday(&tv,NULL);
strftime(daystr,sizeof(daystr),"%Y-%m-%d",localtime(&tv.tv_sec));
for(int i=0;i<20;i++) {
if(daystr[i]==':')
daystr[i]='-';
}
save_path_string = save_path_string + daystr + std::string("/");
if(access(save_path_string.c_str(),0) == -1)
if(mkdir(save_path_string.c_str(),0744) == -1)
std::cout<<"The data folder create error!"<<std::endl<<save_path_string<<std::endl;
char mytime[20];
strftime(mytime,sizeof(mytime),"%Y-%m-%d-%T",localtime(&tv.tv_sec));
for(int i=0;i<20;i++) {
if(mytime[i]==':')
mytime[i]='-';
}
save_path_string2 = save_path_string + std::string("/") + mytime + std::string("/");
if(access(save_path_string2.c_str(),0) == -1)
if(mkdir(save_path_string2.c_str(),0744) == -1)
std::cout<<"The data folder create error!"<<std::endl<<save_path_string2<<std::endl;