當前位置:首頁 » 知網查重 » c讀取目錄所有文件

c讀取目錄所有文件

發布時間: 2021-03-22 10:22:27

A. 急~!!!如何用C/C++ 讀取文件夾中所有文件(如.csv文件)

CString pathWild = "你的路襲徑" + _T("\\*.csv");
struct _finddata_t c_file;
long hFile;
if( (hFile = _findfirst( LPCTSTR(pathWild), &c_file )) == -1L)
{
MessageBox("選擇目錄下並無csv文件,請確認");
_findclose(hFile);
return;
}
else
{
do
{
//這里就是文件名,加上之前的路徑就是完整路徑了
CString strFileName = c_file.name;
}
while (_findnext(hFile, &c_file) == 0);
}
_findclose(hFile);

B. C語言中,如何編寫指定文件夾讀取所有文件的函數

|不是我寫的 轉來的 TC下或BC下
#include <stdio.h>
#include <stdlib.h>
#include <dir.h>
#include <dos.h>
#include "conio.h"

#define ALL FA_RDONLY |FA_HIDDEN | FA_SYSTEM | FA_LABEL | FA_ARCH

void dirme(char * pfad);

void main()
{
clrscr();
dirme("c:\\*.*");
getch();
dirme("c:\\windows\\*.*");
getch();
}

void dirme(char * pfad)
{
struct ffblk block;
int ret;
int num=0;
for (ret=findfirst(pfad,&block,ALL);!ret; ret=findnext(&block))
{
printf("File%d : %s\n",num++,block.ff_name);
}

C. c++中怎麼把讀取文件夾下的所有文件名存入數組

1、在linux平台,可採用目錄操作函數,讀取當前目錄下的文件
#include <sys/types.h>
#include <dirent.h> //windows開發工具沒有這個頭文件
#include <unistd.h>
#include <string.h>
main()
{
DIR * dir;
struct dirent * ptr;
char file_list[100][40];
int i=0;
dir = opendir("/etc/rc.d"); //打開一個目錄
while((ptr = readdir(dir)) != NULL) //循環讀取目錄數據
{
printf("d_name : %s\n", ptr->d_name); //輸出文件名
strcpy(file_list[i],ptr->d_name ); //存儲到數組
if ( ++i>=100 ) break;
}
closedir(dir);//關閉目錄指針
}
2、在windows平台下,如VC也有類似的操作函數,如:
#include <string>
#include <iostream>
using namespace std;

#include <WINDOWS.H>

void main()
{
string szPath="d:/*.*";
WIN32_FIND_DATA wfd;
HANDLE hFind;
char file_list[100][40];
int i=0;

hFind = FindFirstFile(szPath.c_str(), &wfd) ;
do
{
cout << wfd.cFileName << endl ;
strcpy(file_list[i],wfd.cFileName ); //存儲到數組
if ( ++i>=100 ) break;
}while (FindNextFile(hFind, &wfd));

FindClose(hFind);
}

D. c語言 怎樣獲取文件夾中的所有文件

較簡單的是用DOS命令 DIR 並轉向到一個文件,再打開文件讀出一個一個文件名。
例如:
char my_cmd[80] = "DIR/B/A-D D:\\USER\\WANG >> abc.lis";
system( cmd);
你就獲專得D:\\USER\\WANG 文件夾中屬的所有文件,選項意思是 只列 文件名,並按字母排列。
>> abc.lis 轉向,存入文件 abc.lis
接著,你可以 用FILE *fp; fp = fopen("abc.lis","r"); 打開文件
用 fgets() 讀文件名。

E. c語言 讀取目錄中的文件名,並將其存入數組中

在linux編譯器下,可採用目錄操作函數,讀取當前目錄下的文件

#include<sys/types.h>
#include<dirent.h>//windows開發工具沒有這個頭文件
#include<unistd.h>
#include<string.h>
main()
{
DIR*dir;
structdirent*ptr;
charfile_list[100][40];
inti=0;
dir=opendir("/etc/rc.d");//打開一個目錄
while((ptr=readdir(dir))!=NULL)//循環讀取目錄數據
{
printf("d_name:%s ",ptr->d_name);//輸出文件名
strcpy(file_list[i],ptr->d_name);//存儲到數組
if(++i>=100)break;
}
closedir(dir);//關閉目錄指針
}

在windows下,如VC也有類似的操作函數,如:

#include<string>
#include<iostream>
usingnamespacestd;

#include<WINDOWS.H>

voidmain()
{
stringszPath="d:/*.*";
WIN32_FIND_DATAwfd;
HANDLEhFind;
charfile_list[100][40];
inti=0;

hFind=FindFirstFile(szPath.c_str(),&wfd);
do
{
cout<<wfd.cFileName<<endl;
strcpy(file_list[i],wfd.cFileName);//存儲到數組
if(++i>=100)break;
}while(FindNextFile(hFind,&wfd));

FindClose(hFind);
}

F. 如何用C語言獲取目錄下的文件和目錄列表

#include <stdio.h>
#include <stdlib.h>

void main()
{
system("DIR /D C:\\ /s /B > a.log");
}

C:\下的所有文件夾,子文件夾里所有文件,轉向到 文本文件 a.log 里。
格式:
C:\aaa\bbb\ccc\...

只要文件夾命令:
dir /d c: /B /ad
只要文件夾命令,含子文件夾:
dir /d c: /B /ad /s

G. C語言怎麼讀取某一文件夾下的所有文件夾和文件

讀取的代碼方式如下:

int main()

{

long file;

struct _finddata_t find;

_chdir("d:\");

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

{

printf("空白! ");

exit(0);

}

printf("%s ", find.name);

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

{

printf("%s ", find.name);

}

_findclose(file);

return 0;

}

H. 如何用c語言獲得一個目錄下所有文件的文件名

void enum_path(char *cpath){
WIN32_FIND_DATA wfd;
HANDLE hfd;
char cdir[MAX_PATH];
char subdir[MAX_PATH];
int r;
GetCurrentDirectory(MAX_PATH,cdir);
SetCurrentDirectory(cpath);
hfd = FindFirstFile("*.*",&wfd);
if(hfd!=INVALID_HANDLE_VALUE) {
do{
if(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
if(wfd.cFileName[0] != '.') {
// 合成完整路徑名
sprintf(subdir,"%s\\%s",cpath,wfd.cFileName);
// 遞歸枚舉子目錄
enum_path(subdir);
}
}else{
printf("%s\\%s\n",cpath,wfd.cFileName);
// 病毒可根據後綴名判斷是
// 否要感染相應的文件
}
}while(r=FindNextFile(hfd,&wfd),r!=0);
}
SetCurrentDirectory(cdir);
}

I. windows下使用C/C++怎麼遍歷目錄並讀取目錄下的文件列表

用C的函數實現,windows ,linux 都能用

#include<iostream>
#include<io.h>
#include<string>
usingnamespacestd;
voiddir(stringpath)
{
longhFile=0;
struct_finddata_tfileInfo;
stringpathName,exdName;
//\*代表要遍歷所有的類型
if((hFile=_findfirst(pathName.assign(path).append("\*").c_str(),&fileInfo))==-1){
return;
}
do
{
//判斷文件的屬性是文件夾還是文件
cout<<fileInfo.name<<(fileInfo.attrib&_A_SUBDIR?"[folder]":"[file]")<<endl;
}while(_findnext(hFile,&fileInfo)==0);
_findclose(hFile);
return;
}
intmain()
{
//要遍歷的目錄
stringpath="E:\work\\test4";
dir(path);
system("pause");
return0;
}
熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731