这是我第一次用c语言写个实例程序,拿出来请大侠指点指点,程序会遍历某个目录下所有文件和目录并以list的形式展示出来,下一级目录会在屏幕缩进4个char字符,目录都会以”/"结尾
#include<stdio.h>
#include<unistd.h>
#include<sys/stat.h>
#include<sys/types.h>
#include<dirent.h>
void printfDir(const char* path,int depth)
{
DIR *dir;
struct dirent *entry;
struct stat buf;
dir = opendir(path);
if(dir == NULL)
{
fprintf(stdout,"open this %s fail\n",path);
return;
}
chdir(path); //进入目录
while((entry = readdir(dir)) != NULL) //逐个读取目录总文件
{
lstat(entry->d_name,&buf); //得到文件的各种属性,保存在struct buf中
if(S_ISDIR(buf.st_mode)){ //如果这个文件是目录
if(strcmp(".",entry->d_name)==0 || strcmp("..",entry->d_name)==0)//去掉"." ".."这两个目录
continue;
fprintf(stdout,"%*s%s/\n",depth,"",entry->d_name);
printfDir(entry->d_name,depth+4);
}
fprintf(stdout,"%*s%s\n",depth,"",entry->d_name);
}
chdir("..");
closedir(dir);
}
int main(int argc,char* argv[])
{
char *dir = ".";
if(argc>=2)
{
dir = argv[1];
}
fprintf(stdout,"Directory scanf of %s\n",dir);
printfDir(dir,0);
fprintf(stdout,"done\n");
exit(0);
}
分享到:
相关推荐
根据提供的文件标题、描述、标签以及...综上所述,这段代码覆盖了C语言中文件和目录操作的基础知识点,对于初学者而言是非常好的实践案例。通过实际编写和运行这样的代码,可以帮助加深对C语言中文件系统操作的理解。
总结起来,这个压缩包提供了一个完整的解决方案,展示了如何在C语言中读写ini配置文件。这包括了源代码、测试用例、编译配置以及相关文档,对于任何希望在C语言项目中处理ini文件的开发者来说,都是一个有价值的参考...
综上所述,通过C语言实现文件夹的递归扫描不仅能够清晰地展示文件系统的层次结构,而且能够高效地完成文件搜索、数据统计等任务。同时,在编写此类程序时也需要注意各种细节问题,以确保程序的稳定性和可靠性。
本资源" C语言文件操作思维导图及实例代码 "提供了关于C语言文件操作的清晰概览和实践示例,这对于初学者和进阶者来说都是宝贵的资料。 C语言中的文件操作主要包括以下知识点: 1. **文件流与文件指针**:在C语言...
总之,这个C语言函数包提供了一种简洁的方式来调用Windows API,从而在程序中打开资源管理器并展示指定目录。这对于开发Windows桌面应用或者需要与文件系统交互的项目非常有用。通过学习和使用这样的函数包,开发者...
在C语言编程中,调用系统文件浏览对话框是一个常见的需求,这通常涉及到与操作系统进行交互,以便用户能够选择一个或多个文件。在Windows操作系统中,我们可以使用Microsoft提供的API函数来实现这一功能。本文将详细...
2. **多级目录结构**:实现对文件和目录的创建、删除、重命名、变更权限、显示文件内容、修改文件内容等操作。 3. **实验报告内容**:包括实验目的、实验内容、设计思路、程序流程图、主要数据结构和函数说明、带...
《明解C语言》是一本面向学习C语言编程的学习者编写的...由于篇幅限制,未能具体展示《明解C语言》中的详细内容,但它无疑为学习者提供了一个系统学习C语言编程的平台,从基础到提高,逐步引导读者掌握C语言的精髓。
### 用Huffman编码对文件进行压缩的C语言实现 #### 一、引言 随着计算机技术的发展,数据量的增长速度越来越快,如何有效地管理和处理这些数据成为了亟待解决的问题。其中,数据压缩技术因其能够有效减少数据占用...
C语言是一种广泛使用的编程语言,它提供了丰富的文件操作函数,允许程序员能够轻松地对文件进行创建、打开、关闭、读取和写入等操作。 在C语言中,文件是通过流式接口进行处理的,这意味着文件被当作字符流处理,不...
标题中的“自己用C语言写的读取文件二进制数据,并计算CRC的程序”表明这是一个使用C语言编写的程序,其主要功能是读取文件...程序的实现涉及到基本的文件I/O操作和复杂的CRC算法,这展示了C语言在系统级编程中的应用。
《C语言开发范例大全》是一本深受C语言学习者喜爱的教材,它以其丰富的实例和详尽的解析,为初学者和有经验的程序员提供了深入理解C语言的宝贵资源。这本书涵盖了C语言的基础概念、语法特性、高级编程技巧以及实际...
在C语言中,读取文件数据是编程过程中常见的任务,特别是在处理输入/输出操作时。本文将深入探讨如何使用C语言来实现从文件中读取数据。我们将涵盖基本的文件操作,包括打开、读取、关闭文件以及处理可能出现的错误...
在IT领域,网络编程是不可或缺的一部分,而C语言凭借其高效和灵活性,常被用于实现底层的网络通信功能。本话题将深入探讨如何利用C语言的socket接口来实现文件的下载功能,包括服务器的多线程处理以及客户端的命令...
3. "十进制转二进制.c":这是一个将十进制数转换为二进制数的程序,展示了C语言如何处理数值计算和字符串操作。 4. "期中考试目录.doc":这可能是一个文档,包含了期中考试的题目清单,涵盖了C语言的基础知识和进阶...
在C语言中,文件操作是程序与外部数据交互的关键部分,包括读取文件中的数据和向文件中写入数据。本教程将详细讲解C语言中关于文件读取和写入的相关知识点,涵盖字符、字符串及整行数据的处理。 1. **文件打开模式*...
开发者需要熟练掌握C语言的文件操作函数,如fopen、fread、fwrite、fprintf、fclose等,以确保数据的正确读取和写入。 此外,考虑到系统扩展性,描述中提到如果后续学习了数据库知识,可以将数据存储方式升级为...
本文主要介绍了三个用于操作密码文件的函数:setpwent()、getpwent()和endpwent(),它们都是在处理/etc/passwd文件时常用的函数。 首先,setpwent()函数的作用是初始化密码文件的读取过程。当你需要从头开始遍历...
资源文件是一个优化后的C语言文件读写操作示例,展示了如何进行文件写入和读取操作,在这段代码中,首先演示了文件写入操作。通过使用fopen()函数以写入模式打开文件,并使用fprintf()将数据写入文件。随后使用...
总的来说,这个C语言编写的文件分割器展示了如何利用基本的文件操作和命令行处理技术解决实际问题。通过理解和应用这些知识,开发者可以创建更复杂、更高效的文件管理系统,服务于各种IT应用场景。而了解这些基础...