c语言中关于路径的函数 c语言中如何表示文件的路径

C语言试题 编写一个获取文件路径的函数

#include stdio.h

成都创新互联是专业的文峰网站建设公司,文峰接单;提供网站建设、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行文峰网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

main()

{

char str[80]="d:\\files\\dataFiles\\data\\avatar.bmp"; // 单斜杠处填双斜杠

int L,i;

L = strlen(str);

for (i=L-1;i=0;i--) if (str[i] == '\\') { str[i] ='\0'; break;}; // 去掉文件名就是路径

printf("Path= %s",str);

return 0;

}

-----------

写成函数和调用:

#include stdio.h

void fun(char *str){

int L,i;

L = strlen(str);

for (i=L-1;i=0;i--) if (str[i] == '\\') { str[i] ='\0'; break;};

}

main()

{

char str[80]="d:\\files\\dataFiles\\data\\avatar.bmp";

fun(str);

printf("Path= %s",str);

return 0;

}

请问C语言的读得到一个文件的全路径的函数是什么?

可以运行后指定要打开的文件,成功运行

如我D盘下有f1.txt,没有f3.txt

两次运行结果分别是

一:

请输入要打开的文件名(含路径):

d:\f1.txt

成功打开文件d:\f1.txt!

Press any key to continue

二:

请输入要打开的文件名(含路径):

d:\f3.txt

打开文件失败!

Press any key to continue

程序如下:

#include stdio.h

#include malloc.h

#define MAXSIZE 50

void main()

{

char* file=(char*)malloc(sizeof(char)*MAXSIZE);

printf("请输入要打开的文件名(含路径):\n");

gets(file);

FILE* fp;

if(!(fp=fopen(file,"r")))

{

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

}

else

{

printf("成功打开文件%s!\n",file);

fclose(fp);

}

free(file);

}

VC环境中用C语言查找当前路径下的所有文件和文件夹的函数是什么?

这是我的TFTP程序中的一个函数,是搜索当前盘符下的所有文件,包括文件的大小,并发送到客户端,其中就有查找当前路径下的文件,你自己挑一下,应该能完成你的需求。

void FileList(sockaddr_in sour_addr,char strStartDir[])

{

char sendbuffer[1024];

sockaddr_in destaddr;

int sourlen = 0;

int ret = 0;

int len = 0;

int flen = 0;

fd_set fdr;

unsigned short blocknum = 0;

FILE *file;

char filename[128];

strcpy(filename,strStartDir+2); /*获取文件名*/

strcat(filename,"\\*");

destaddr.sin_family = AF_INET;

destaddr.sin_port = sour_addr.sin_port;

destaddr.sin_addr.s_addr = inet_addr(desthost);//

WIN32_FIND_DATA FindFileData;

HANDLE hFind;

hFind = FindFirstFile(filename, FindFileData);

if (hFind == INVALID_HANDLE_VALUE)

{

printf ("Invalid File Handle");

}

else

{

while(FindNextFile(hFind,FindFileData))

{

printf(FindFileData.cFileName);

printf("\r\n");

memset(sendbuffer,'\0',1024);

len = filldata(blocknum++,FindFileData.cFileName,strlen(FindFileData.cFileName),sendbuffer,sizeof(sendbuffer));

ret = sendto(serverSock,sendbuffer,len,0,(sockaddr *)destaddr,sizeof(destaddr));

}

len = fillover(blocknum,"Over",4,sendbuffer,sizeof(sendbuffer));

ret = sendto(serverSock,sendbuffer,len,0,(sockaddr *)destaddr,sizeof(destaddr));

FindClose(hFind);

return;

}

}


文章题目:c语言中关于路径的函数 c语言中如何表示文件的路径
链接分享:http://scjbc.cn/article/dojhppi.html

其他资讯