如何得到C:\盘或某目录(包含子目录)下的所有文本(.txt)文件?
如何得到C:\盘或某目录(包含子目录)下的所有文本(.txt)文件的文件名称? 问题点数:100、回复次数:4Top
1 楼ukyozhou(ukyo)回复于 2002-08-13 10:42:59 得分 0
gzTop
2 楼kingcaiyao(aking)回复于 2002-08-13 10:53:35 得分 0
这是个老问题,用FindFirst/FindNext/FindClose写一个递归函数,你可以搜索遍地都是.Top
3 楼jishiping(JSP 季世平)回复于 2002-08-13 10:57:48 得分 70
void GetTxtFile(AnsiString Path, TStrings* List)
{
TSearchRec sr;
AnsiString Ext;
if (Path[Path.Length()]!='\\')
Path += '\\';
if (FindFirst(Path+"*.*",faAnyFile,sr)!=0)
return;
do {
if (sr.Attr & faDirectory) {
if (sr.Name[1]=='.')
continue;
GetTxtFile(Path+sr.Name, List);
}
else {
Ext = ExtractFileExt(sr.Name);
if (!strcmpi(Ext.c_str(),".txt"))
List->Add(Path+sr.Name);
}
}while(FindNext(sr)==0);
FindClose(sr);
}
//调用的例子, 将所有C:\及所有子目录下的.txt文件放到ListBox1中
ListBox1->Items->Clear();
GetTxtFile("C:\\", ListBox1->Items);Top
4 楼kingcaiyao(aking)回复于 2002-08-13 10:59:32 得分 30
写出代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TSearchRec sr;
if (FindFirst("c:\\*.txt", faAnyFile, sr) == 0)
{
do
{
ListBox1->Items->Add(sr.Name);
ListBox1->Items->Add(sr.Size);
} while (FindNext(sr) == 0);
FindClose(sr);
}
}
Top
相关问题
- 谁有删除子目录的源程序?C或C++的都行
- 请问C#中怎么拷贝一个文件夹包括子目录?
- c#读取TXT文本的问题>>>>
- 如何在linux下用c/c++边编程实现文件夹下所有子目录文件的遍历?
- SOS:查询目录及其子目录下的指定类型的文件。(用C实现,UNIX下),先谢了!
- 如何在C++ Builder删除一个目录下的所有子目录和所有文件
- 在C++Builder中如何copy一个文件夹下的所有子目录和文件?
- 简单问题:怎样删除目录c:\temp下的所有文件及其子目录?(在线)
- 怎么把指定目录下(包括子目录)所有的txt文件读取到一个text控件中?
- 很怪的问题:CreateDir('C:\temp')这是例子,可以实现.但CreateDir('C:\temp\xxx')就有问题???????难道只能建一层子目录??????




