青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 297,  comments - 15,  trackbacks - 0

LINUX下用C語言歷遍目錄 C語言列出目錄2007-04-06 21:02功能:       Linux下C語言目錄歷遍 (讀取目錄)

作者:       小徐

QQ:          339534039

轉載請注明出處

呵呵,LINUX下歷遍目錄的方法一般是這樣的

打開目錄-》讀取-》關閉目錄

相關函數是

opendir -> readdir -> closedir

 

#include <dirent.h>

DIR *opendir(const char *dirname);

 

#include <dirent.h>

struct dirent *readdir(DIR *dirp);

 

#include <dirent.h>

int closedir(DIR *dirp);

 

好了,三個函數都出來了呵呵,原型就是上面,給自己解釋一下免得以后我自己忘了呵呵!我以經忘過好幾回了,所以這次放上博客來

opendir用于打開目錄,是類似于流的那種方式,返回一個指向DIR結構體的指針他的參數*dirname是一個字符數組或者字符串常量,

readdir函數用于讀取目錄,他只有一個參數,這個參數主opendir返回的結構體指針,或者叫句柄更容易理解些吧。這個函數也返回一個結構 體指針 dirent *

dirent的結構如下定義

    struct dirent

    {

        long d_ino;                      /* inode number */

        off_t d_off;                     /* offset to this dirent */

        unsigned short d_reclen;         /* length of this d_name */

        char d_name [NAME_MAX+1];        /* file name (null-terminated) */

    }

結構體中d_ino存放的是該文件的結點數目,什么是結點數目呢我也說不清楚了呵呵,查一下其它資料了

d_off 是文件在目錄中的編移,具體是什么意思我也不是很明白,我很少用到它,其本上就是用到d_name short d_reclen是這個文件的長度,需要注意的是這里的長度并不是指文件大小,因為大小和長度是2回事了,你可以用lseek將文件長度移得很長,但大小 其實還是那么大.最后一個元素就是我們要的了,文件名稱!

寫了一個實例:

 

/**

* 功能:       Linux下C語言目錄歷遍 (讀取目錄)

* 作者:       小徐

* 郵箱:      xjtdy888@163.com

* QQ:          339534039

* 轉載請注明出處

*/

#include <stdio.h>

#include <stdlib.h>

#include <sys/types.h>

#include <unistd.h>

#include <dirent.h>

 

void print_usage(void);

 

void print_usage(void)

{

printf("Usage: test dirname\n");

}

 

int main(int argc,char *argv[])

{

DIR * dp;

struct dirent *filename;

 

if (argc < 2)

{

       print_usage();

       exit(1);

}

 

dp = opendir(argv[1]);

if (!dp)

{

       fprintf(stderr,"open directory error\n");

       return 0;

}

while (filename=readdir(dp))

{

       printf("filename:%-10s\td_info:%ld\t d_reclen:%us\n",

         filename->d_name,filename->d_ino,filename->d_reclen);

}

closedir(dp);

return 0;

}

 

將上面代碼保存為readdir.c執行下面的命令進行編譯測試

[root@phpos ~]# gcc readdir.c

[root@phpos ~]# ./a.out

Usage: test dirname

[root@phpos ~]# ./a.out /etc/samba/

filename:lmhosts             d_info:49296          d_reclen:24s

filename:smb.conf            d_info:49825          d_reclen:24s

filename:smbpasswd           d_info:49402          d_reclen:24s

filename:..                  d_info:47906          d_reclen:16s

filename:secrets.tdb         d_info:49812          d_reclen:24s

filename:.                   d_info:49295          d_reclen:16s

filename:smbusers            d_info:49377          d_reclen:24s

[root@phpos ~]# ./a.out /var/

filename:preserve            d_info:31971          d_reclen:24s

filename:lock                d_info:31966          d_reclen:16s

filename:yp                  d_info:31976          d_reclen:16s

filename:empty               d_info:31962          d_reclen:24s

filename:run                 d_info:31972          d_reclen:16s

filename:lib                 d_info:31939          d_reclen:16s

filename:nis                 d_info:31969          d_reclen:16s

filename:local               d_info:31965          d_reclen:24s

filename:spool               d_info:31973          d_reclen:24s

filename:tmp                 d_info:31941          d_reclen:16s

filename:opt                 d_info:31970          d_reclen:16s

filename:log                 d_info:31959          d_reclen:16s

filename:crash               d_info:31997          d_reclen:24s

filename:..                  d_info:2              d_reclen:16s

filename:account             d_info:32037          d_reclen:24s

filename:mail                d_info:31968          d_reclen:16s

filename:cache               d_info:31960          d_reclen:24s

filename:db                  d_info:31961          d_reclen:16s

filename:.                   d_info:31938          d_reclen:16s

[root@phpos ~]#

 

轉載地址:http://hi.baidu.com/phps/blog/item/92120fd1645fc9d2562c840a.html


posted on 2010-04-14 23:23 chatler 閱讀(410) 評論(0)  編輯 收藏 引用 所屬分類: Linux_Coding
<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用鏈接

留言簿(10)

隨筆分類(307)

隨筆檔案(297)

algorithm

Books_Free_Online

C++

database

Linux

Linux shell

linux socket

misce

  • cloudward
  • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

network

OSS

  • Google Android
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • os161 file list

overall

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久久国色av免费观看性色| 亚洲大片在线| 亚洲欧美国产高清| 亚洲欧美日韩直播| 欧美伊人精品成人久久综合97| 亚洲福利视频一区二区| 亚洲高清视频一区二区| 亚洲国产成人精品久久| 亚洲激情亚洲| 亚洲永久精品国产| 久久久人成影片一区二区三区观看| 国产精品久久久久久五月尺| 亚洲免费电影在线观看| 欧美日韩精品一本二本三本| 国内成人精品视频| 亚洲最新视频在线| 久久超碰97人人做人人爱| 久久久久久久综合狠狠综合| 99国产精品久久久久久久| 亚洲尤物在线视频观看| 巨胸喷奶水www久久久免费动漫| 国内精品视频久久| 亚洲婷婷国产精品电影人久久| 亚洲精品影院| 久久在线播放| 国产精品久久久久久一区二区三区| 午夜精品区一区二区三| 欧美成人按摩| 亚洲一区二区三区中文字幕| 欧美视频不卡中文| 亚洲大胆人体在线| 久久精品国产69国产精品亚洲 | 亚洲综合精品自拍| 亚洲成人资源网| 欧美一区二区在线免费播放| 激情久久一区| 久久精品二区亚洲w码| 亚洲人www| 乱人伦精品视频在线观看| 国产精品羞羞答答| 亚洲一级高清| av不卡在线观看| 欧美日韩999| 亚洲乱码国产乱码精品精天堂 | 亚洲精品视频在线| 亚洲午夜av| 久久aⅴ国产欧美74aaa| 欧美~级网站不卡| 亚洲黄色在线看| 久久久水蜜桃av免费网站| 欧美视频二区| 亚洲日本电影| 久久最新视频| 亚洲一区在线免费观看| 麻豆成人在线观看| 国产一区二区精品| 亚洲欧美一区二区激情| 亚洲国产欧美在线| 久久麻豆一区二区| 国内精品久久久久影院薰衣草| 欧美激情第三页| 美女视频黄 久久| 国产一区二区三区在线观看网站 | 国产精品日韩欧美一区二区| 永久久久久久| 久久久精品动漫| 午夜精品国产更新| 国产精品视频精品| 午夜精品福利在线| 亚洲图片你懂的| 欧美午夜不卡影院在线观看完整版免费| 久久久精品国产免费观看同学| 欧美日韩另类综合| 亚洲一区二区三区欧美| 亚洲日本一区二区三区| 久久综合九色综合久99| 在线播放国产一区中文字幕剧情欧美| 亚洲视频福利| 国产精品一区二区在线观看网站| 欧美成人免费在线| 欧美激情四色 | 国产精品美女久久久久av超清 | 在线电影国产精品| 亚洲国产精品久久人人爱蜜臀 | 亚洲国产欧美在线人成| 久久精品国产欧美激情| 国产欧美日韩精品一区| 欧美一区二区三区四区视频| 麻豆成人小视频| 亚洲午夜国产一区99re久久| 久久精品女人| 亚洲人成欧美中文字幕| 一片黄亚洲嫩模| 国产亚洲高清视频| 亚洲第一网站免费视频| 欧美国产一区二区三区激情无套| 另类av导航| 欧美激情综合亚洲一二区| 这里只有精品在线播放| 在线一区二区日韩| 国产视频在线观看一区二区三区| 亚洲素人在线| 激情91久久| 亚洲精品免费网站| 国产日韩在线不卡| 亚洲第一精品夜夜躁人人躁| 国产一区二区精品在线观看| 亚洲欧美成人网| 日韩视频在线一区二区三区| 久久精品视频网| 亚洲国产精品欧美一二99| 亚洲欧洲日本国产| 国产日韩精品一区二区| 欧美成人精品| 国产曰批免费观看久久久| 亚洲国产精品小视频| 国产精品日韩欧美一区二区| 一区二区日韩伦理片| 亚洲高清色综合| 亚洲一区国产精品| 91久久午夜| 性欧美1819性猛交| 亚洲天堂av图片| 快射av在线播放一区| 亚洲影院高清在线| 蜜臀91精品一区二区三区| 欧美高清在线一区| 久久亚洲综合网| 国产精品有限公司| 99热这里只有成人精品国产| 一区二区三区欧美亚洲| 久久综合久久综合九色| 欧美一区二区视频在线| 欧美国产亚洲另类动漫| 久久久综合精品| 另类酷文…触手系列精品集v1小说| 午夜亚洲精品| 欧美日韩免费在线视频| 欧美二区在线| 在线欧美影院| 久久久久久网站| 老鸭窝亚洲一区二区三区| 国产欧美日韩亚洲精品| 日韩视频免费观看高清在线视频 | 欧美午夜www高清视频| 亚洲日本久久| 亚洲精品在线一区二区| 久久人91精品久久久久久不卡| 99re6热只有精品免费观看 | 久久综合狠狠综合久久综青草| 亚洲国产精品va在看黑人| 国产精品99久久99久久久二8| 玖玖在线精品| 亚洲国产乱码最新视频| 久久婷婷国产综合尤物精品| 亚洲精品国产日韩| 一区二区三区产品免费精品久久75 | 欧美成人一区二区| 最新69国产成人精品视频免费| 99精品视频免费| 国产精品多人| 性欧美大战久久久久久久免费观看| 亚洲精品免费看| 亚洲区第一页| 欧美日韩免费高清一区色橹橹| 亚洲欧美电影在线观看| 久久久久久久久综合| 国产日韩一区二区三区| 久久综合久久综合这里只有精品| 99精品黄色片免费大全| 欧美亚洲午夜视频在线观看| 亚洲精品久久| 国产日韩在线播放| 久热国产精品| 亚洲午夜免费视频| 久久综合久久久| 亚洲欧洲精品天堂一级 | 日韩亚洲国产欧美| 亚洲免费成人| 今天的高清视频免费播放成人| 国产精品三区www17con| 欧美1区2区视频| 亚洲综合成人婷婷小说| 小处雏高清一区二区三区| 在线观看视频一区二区| 欧美激情一区二区在线| 亚洲欧美影音先锋| 在线观看欧美黄色| 国产欧美日韩精品丝袜高跟鞋| 国产欧美日韩综合| 欧美成人精品在线观看| 亚洲午夜一区二区| 欧美激情视频一区二区三区免费| 亚洲区免费影片| 老牛嫩草一区二区三区日本| 免费不卡视频| 久久久久国产成人精品亚洲午夜| 久久全球大尺度高清视频| 日韩一二三区视频| 精品动漫3d一区二区三区免费版 |