导航:首页 > 文件类型 > c获取file的文件名

c获取file的文件名

发布时间:2023-07-29 13:15:11

❶ 在c++中如何获取文件

一、在不使用mfc的程序中获得某个目录下的所有文件名称,包括子目录。把文件名称以一个固定的程度放入一个缓冲中,这个缓冲要足够的大,能容下所有的文件名称。
函数的输入为要查找的根目录,输出为存放所有文件名称的缓冲
算法:使用递归
二、代码
void
FindFileInDir(char*
rootDir,
char*
strRet)
{
char
fname[MAC_FILENAMELENOPATH];
ZeroMemory(fname,
MAC_FILENAMELENOPATH);
WIN32_FIND_DATA
fd;
ZeroMemory(&fd,
sizeof(WIN32_FIND_DATA));
HANDLE
hSearch;
char
filePathName[256];
char
tmpPath[256];
ZeroMemory(filePathName,
256);
ZeroMemory(tmpPath,
256);
strcpy(filePathName,
rootDir);
BOOL
bSearchFinished
=
FALSE;
if(
filePathName[strlen(filePathName)
-1]
!=
'\\'
)
{
strcat(filePathName,
"\\");
}
strcat(filePathName,
"*");
hSearch
=
FindFirstFile(filePathName,
&fd);
//Is
directory
if(
(fd.dwFileAttributes
&
FILE_ATTRIBUTE_DIRECTORY)
&&
strcmp(fd.cFileName,
".")
&&
strcmp(fd.cFileName,
"..")
)
{
strcpy(tmpPath,
rootDir);
strcat(tmpPath,
fd.cFileName);
FindFileInDir(tmpPath,
strRet);
}
else
if(
strcmp(fd.cFileName,
".")
&&
strcmp(fd.cFileName,
"..")
)
{
sprintf(fname,
"%-50.50s",
fd.cFileName);
strcat(strRet
+
strRet[strlen(strRet)]
,
fname);
}
while(
!bSearchFinished
)
{
if(
FindNextFile(hSearch,
&fd)
)
{
if(
(fd.dwFileAttributes
&
FILE_ATTRIBUTE_DIRECTORY)
&&
strcmp(fd.cFileName,
".")
&&
strcmp(fd.cFileName,
"..")
)
{
strcpy(tmpPath,
rootDir);
strcat(tmpPath,
fd.cFileName);
FindFileInDir(tmpPath,
strRet);
}
else
if(
strcmp(fd.cFileName,
".")
&&
strcmp(fd.cFileName,
"..")
)
{
sprintf(fname,
"%-50.50s",
fd.cFileName);
strcat(strRet
+
strRet[strlen(strRet)]
,
fname);
}
}
else
{
if(
GetLastError()
==
ERROR_NO_MORE_FILES
)
//Normal
Finished
{
bSearchFinished
=
TRUE;
}
else
bSearchFinished
=
TRUE;
//Terminate
Search
}
}
FindClose(hSearch);
}

❷ c语言如何获取用户通过键盘输入的文件目录中的文件名和文件路径,ballball大佬帮帮我🙏求代码

int main()
{
string s = "c:\\abc\\def\\text.txt";
int xie_index = s.find_last_of('\\'); 制// 路径中最后一个\的位置
string file_dirname = s.substr(0, xie_index + 1);
string file_basename = s.substr(xie_index + 1, s.size());
cout << file_dirname << endl << file_basename << endl;
}

❸ MFC 的CFile对象可以获取文件名,那何通过FILE *,ofstream, ifstream, 文件句柄获取文件名呢

那没有办法,它们只支持文件输入、输出操作。

❹ 如何用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);
}

❺ 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;

}

❻ c# 如何获取某个文件所在文件夹的名称

string filePath =@"C: \Users\Administrator\Desktop\1\2";
DirectoryInfo dirInfo = new DirectoryInfo(filePath);
string currentDir = dirInfo .Name; //获取当前文件所在目录名称

❼ C++ MFC获取文件名字(包括后缀名)以下做法是否正确

相信楼主会喜欢参考资料的,如果要获取文件名等,请找函数GetFileExt、GetFileName、GetPathName等。你找到函数新开一个连接,然后自己看函数说明吧。
注:我提供的连接在参考资料。

❽ c如何获得FILE*的路径

关于通过 C 语言编程获取到某个文件的完整路径、以及文件名称的问题,那是毫无疑问可内以做容到的。
但是具体的编程我由于已经好多年没有编写 C 语言程序了。故具体的程序调试过程需要你自己进行完成了。关于这部分的问题,我记得 C 语言库函数大全上面肯定是有的,你可以参考有关 C 语言库函数的教材。
但是注意一点就是:如果是在 WINDOWS 系统下面的编程,那么路径名必须使用双斜线,即:\\ 才行。例如:若想表示打开驱动器 D 上的 MY_SUBDIR 子目录下面的 MYFILE.TXT 文件,则在 C 语言源程序中要写为如下代码:
#include <stdio.h>
void main( )
{
FILE * fpr ;
fpr = fopen("D:\\MY_SUBDIR\\MYFILE.TXT", "r") ; /* 这样写才是正确的语句。*/
......
fclose(fpr) ;
}

❾ 如何获取指定的文件夹内文件的全部名称

可以使用命令行命令。

Win+R,输入CMD,打开命令行提示符窗口,用CD命令定位到需要获取文件夹内文件名称的目录下,如C:A,然后输入以下代码,就会生成文件清单到file01.TXT文件中。

DIR /B /S /A:-D >file01.txt

❿ C语言中,如何获得文件名

WIN32_FIND_DATA find_data;

HANDLE search_handle;

search_handle = FindFirstFile( DirectoryPath,&find_data );

if (search_handle != INVALID_HANDLE_VALUE)

{

do

{

if (find_data.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)

{

CString name = find_data.cFileName;

if( (name == ".")||(name == "..") )

continue;

}

}while(FindNextFile(search_handle,&find_data));

FindClose(search_handle);

阅读全文

与c获取file的文件名相关的资料

热点内容
文件的提取码如何使用 浏览:720
qq看资料主页留足迹 浏览:42
网页视频如何保存到文件夹里 浏览:634
核桃编程打开就蓝屏怎么回事 浏览:843
win10什么时候旗舰版 浏览:210
在日本找房子用哪个App好用 浏览:242
linux命令行下执行python脚本 浏览:935
文摘索引数据库 浏览:712
网络红娘下载 浏览:686
如何对发送的文件修改 浏览:464
如何更改文件编辑器 浏览:91
怎么把图片以图片形式放进文件夹 浏览:833
asp淘宝网站源码 浏览:318
怎么给文件夹换个显示图片 浏览:932
程序员考试河南 浏览:284
苹果手机数据信号模块坏了多少钱 浏览:657
dreamweaver文件夹 浏览:434
苹果照片尺寸是多少 浏览:164
winhex中文版高级教程注册码 浏览:738
spring上传多个文件 浏览:431

友情链接