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

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

读取的代码方式如下:

int main()

{

long file;

struct _finddata_t find;

_chdir("d:\\");

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

{

printf("空白!\n");

exit(0);

}

printf("%s\n", findname);

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

{

printf("%s\n", findname);

}

_findclose(file);

return 0;

}

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

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

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

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

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

LZ知道CString类中有成员函数GetLength(),和ReverseFind ()以及Right()函数吧!

先调用GetLength得到总字符串的长度,再用ReverseFind函数得到\在字符串中的位置,然后用Right函数获取就行了,具体的实现LZ看看这几个函数的使用方法就知道了(参考MSDN)

void CCounterDlg::OnBnClickedButton2()

{

// TODO: 在此添加控件通知处理程序代码

UpdateData();

if(!m_fileName);//m_fileName为编辑控件关联的一个CString类型的变量

else

{

int i=m_fileNameReverseFind('\\');//对‘\’转义

int j=m_fileNameGetLength();

AfxMessageBox(m_fileNameRight(c-t-1));

}

}

不记得程序集里面有提供相关的方法,不过可以自己想一下。不知道写的对不对,只是参考使用,一般情况应该也是没有问题的,你参考有自己的想法可以改一下。

//获取文件夹路径

string path = @"C:\Program Files\IIS";

//如果文件夹路径最后有反斜杠 需要处理

path = pathLastIndexOf(@"\") + 1 == pathLength  pathSubstring(0, pathLength - 1) : path;

//可以考虑封装方法 最好进行一下异常处理 这里就不赘述

string result = pathSubstring(pathLastIndexOf(@"\") + 1);

希望帮到你哦。

以上就是关于C语言怎么读取某一文件夹下的所有文件夹和文件全部的内容,包括:C语言怎么读取某一文件夹下的所有文件夹和文件、根据文件的全路径获取文件简单名称,如:fileFullName="F:\a.txt" 则返回a.txt (C/C++ 实现) 要考虑文件、c#知道文件夹路径怎么得到文件夹名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9429665.html

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

发表评论

登录后才能评论

评论列表(0条)

保存