C语言怎么读取某一文件夹下的所有文件夹和文件?

C语言怎么读取某一文件夹下的所有文件夹和文件?,第1张

读取的代码方式如下:

intmain()

{

longfile

struct_finddata_tfind

_chdir("d:\\")

if((file=_findfirst("*.*",&find))==-1L)

{

printf("空白!\n")

exit(0)

}

printf("%s\n",find.name)

while(_findnext(file,&find)==0)

{

printf("%s\n",find.name)

}

_findclose(file)

return0

}

用C语言读取目录中的文件名的方法:

1、如果是在window环境下,可以用一下方法:

使用stdlib.h头文件声明的system()函数,调用系统命令dir,把c:目录下文件列表写入文件dir.txt中

2、使用dirent.h头文件中声明的opendir(),readdir()函数;

3、如果没有dirent.h,可以使用io.h头文件中声明的_findfirst(),_findnext()函数:

C#遍历指定文件夹中的所有文件

DirectoryInfo TheFolder=new DirectoryInfo(folderFullName)

//遍历文件夹

foreach(DirectoryInfo NextFolder in TheFolder.GetDirectories())

this.listBox1.Items.Add(NextFolder.Name)

//遍历文件

foreach(FileInfo NextFile in TheFolder.GetFiles())

this.listBox2.Items.Add(NextFile.Name)

===================================================================

如何获取指定目录包含的文件和子目录

1. DirectoryInfo.GetFiles():获取目录中(不包含子目录)的文件,返回类型为FileInfo[],支持通配符查找;

2. DirectoryInfo.GetDirectories():获取目录(不包含子目录)的子目录,返回类型为DirectoryInfo[],支持通配符查找;

3. DirectoryInfo. GetFileSystemInfos():获取指定目录下(不包含子目录)的文件和子目录,返回类型为FileSystemInfo[],支持通配符查找;

如何获取指定文件的基本信息;

FileInfo.Exists:获取指定文件是否存在;

FileInfo.Name,FileInfo.Extensioin:获取文件的名称和扩展名;

FileInfo.FullName:获取文件的全限定名称(完整路径);

FileInfo.Directory:获取文件所在目录,返回类型为DirectoryInfo;

FileInfo.DirectoryName:获取文件所在目录的路径(完整路径);

FileInfo.Length:获取文件的大小(字节数);

FileInfo.IsReadOnly:获取文件是否只读;

FileInfo.Attributes:获取或设置指定文件的属性,返回类型为FileAttributes枚举,可以是多个值的组合

FileInfo.CreationTime、FileInfo.LastAccessTime、FileInfo.LastWriteTime:分别用于获取文件的创建时间、访问时间、修改时间;

假设a文件夹在F盘下,代码如下。将文件名输出到一个ListBox中

using System.Data

using System.Drawing

using System.Linq

using System.Text

using System.Windows.Forms

using System.IO

namespace WindowsFormsApplication1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent()

}

private void button2_Click(object sender, EventArgs e)

{

DirectoryInfo theFolder = new DirectoryInfo(@"F:\a\")

DirectoryInfo[] dirInfo = theFolder.GetDirectories()

//遍历文件夹

foreach (DirectoryInfo NextFolder in dirInfo)

{

// this.listBox1.Items.Add(NextFolder.Name)

FileInfo[] fileInfo = NextFolder.GetFiles()

foreach (FileInfo NextFile in fileInfo) //遍历文件

this.listBox2.Items.Add(NextFile.Name)

}

}

}

}

楼主你好

具体代码如下:

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

#define N 40

int main()

{

int i,count = 0

char *cSource,*cSearch

FILE *fp

cSource = (char *)malloc(N * sizeof(char))

cSearch = (char *)malloc(3 * sizeof(char))

if((fp = fopen("word.txt", "r")) == NULL)

{

printf("文件打开失败!\n")

exit(0)

}

printf("输入统计的汉字:")

scanf("%s", cSearch)

fgets(cSource, N, fp)

for(i = 0i <(int)strlen(cSource)i++)

{

if(cSource[i] == cSearch[0] &&cSource[i+1] == cSearch[1])

//一个汉字占两个字节 所以需要判断两个字节的内容

count++

}

printf("%d\n", count)

return 0

}

如果word.txt中包含的内容为:你好吗 你 你

输入:你

输出:3

希望能帮助你哈


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8104666.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存