第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

想了解一下,在C/C++中的readdir遍歷目錄中的子目錄的問(wèn)題?

想了解一下,在C/C++中的readdir遍歷目錄中的子目錄的問(wèn)題?

哆啦的時(shí)光機(jī) 2021-06-22 18:14:24
void listDir(char *dirpath){DIR *dir = opendir((const char*)dirpath);if(dir == NULL){printf("open the log directory <%s> failure\n",dirpath);return ;}struct dirent *dirp = NULL;while((dirp = readdir(dir)) != NULL){if(dirp->d_type & DT_DIR){printf("dirpath = %s\n",dirpath);if(dirp->d_name == NULL || dirp->d_name[0] == '.' || strcmp(dirp->d_name,"..") == 0)continue;sprintf(m_chTempPath,"%s%s/",dirpath,dirp->d_name);listDir(m_chTempPath);}else if(dirp->d_type & DT_REG){sprintf(m_chTemp,"%s%s",m_chTempPath,dirp->d_name);printf("m_chTemp = %s\n",m_chTemp);} elsecontinue;}closedir(dir);}代碼如上,目錄結(jié)構(gòu)如下:/root/shanghai/jingan/xiaoming.txt /root/nanjing/xuanwu/tom.txt/root/shanghai/changning/xiaohong.txt /root/nanjing/hexi/jack.txt/root/shanghai/putuoxiaoli.txt /root/nanjing/baixia/may.txt當(dāng)我執(zhí)行程序時(shí),讀目錄結(jié)構(gòu)會(huì)出錯(cuò),比如會(huì)讀成 /root/shanghai/jingan/changning,而jingan和changning是并列的兩個(gè)目錄,這種錯(cuò)誤該怎么改,急等大大們?cè)诰€幫解決
查看完整描述

2 回答

?
慕斯709654

TA貢獻(xiàn)1840條經(jīng)驗(yàn) 獲得超5個(gè)贊

這個(gè)要正對(duì)不同的操作系統(tǒng),不同的操作系統(tǒng),文件節(jié)點(diǎn)的存放方式不一樣,讀取的方式就不一樣了。
可以利用for循環(huán),像Linux dir=opendir (dirname)打開文件夾,返回目錄指針,dp=readdir(dir)利用讀目錄,返回一行行讀取目錄的文件結(jié)構(gòu)體指針,指針中存的有文件屬性,是文件,還是文件夾。
通過(guò)判斷是文件或者文件夾:
如果是文件,就就輸出文件名dp->name
否則,就是一個(gè)文件夾 繼續(xù)dir1=opendir(dp->name),dp1=readdir(dir1)..
一直循環(huán)到判斷不到目錄了。
windows應(yīng)該也有類似的函數(shù)吧,這個(gè)我就么有用過(guò)了,你找找。

查看完整回答
反對(duì) 回復(fù) 2021-06-27
?
慕沐林林

TA貢獻(xiàn)2016條經(jīng)驗(yàn) 獲得超9個(gè)贊


           else if(dirp->d_type & DT_REG)           {                sprintf(m_chTemp,"%s%s",dirpath,dirp->d_name); //----                printf("m_chTemp = %s\n",m_chTemp);           }


查看完整回答
反對(duì) 回復(fù) 2021-06-27
  • 2 回答
  • 0 關(guān)注
  • 385 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)