動作確認
Windows10 + gccコンパイラ
プログラム例
c:\mytmp というフォルダの有無をチェックする。
フォルダが存在しない → フォルダを作成する
フォルダが存在する → すでに存在する旨のメッセージを表示する
checkFolder.c
#include <stdio.h>
#include <direct.h>
#include <sys/stat.h>
int main(void){
char *checkDir = "c:\\mytmp"; /* チェックしたいフォルダ */
struct stat st;
/* フォルダの有無をチェックする */
if(stat(checkDir, &st) != 0){
/* フォルダが無い場合 */
if( _mkdir(checkDir) == 0){ /* フォルダを作成 */
printf("フォルダ %s を作成しました/n", checkDir);
}
else{
printf("フォルダ %s が作成できません/n", checkDir);
}
}
else{
/* フォルダが有る場合 */
printf("%s はすでに存在します\n", checkDir);
}
return 0;
}
利用している関数
機能 | 関数 | 戻り値 | 必要ヘッダ |
---|---|---|---|
フォルダのチェック | int stat(const char *path , struct stat *buf ); | フォルダが存在:0 存在しない:0以外 | sys/stat.h |
フォルダ作成 | int _mkdir( const char *dirname ); | 正常終了:0 異常終了:-1 | direct.h |
コメント