用C语言如何从路径名中分离文件名

用C语言如何从路径名中分离文件名,第1张

声明一个足够长的名为fn的char型数组,调用库函数strrchr在含路径的全文件中找到文件名前的'\',将其后的文件名拷贝到fn中即可。举例代码如下:

//#include "stdafxh"//If the vc++60, with this line

#include "stdioh"

#include "stringh"

int main(void){

    char fn[30],p;

    char pathname[80]="e:\\1\\2\\abcdat";

          //上句假设以某种方式获得的全文件名在pathname中,""中只是举例

    strcpy(fn,(p=strrchr(pathname,'\\'))  p+1 : pathname);

          //上句函数第2实参这样写以防止文件在当前目录下时因p=NULL而出错

    printf("%s\n",fn);//打出来看看

    return 0;

}

这道题主要就是利用了String类的split()方法,进行多次调用,已经帮你实现了,代码如下:

public class Test{

public static void main(String[] args){

String str = "c:/win/good/aaatxt;d:/win/good/bbbtxt;c:/win/cccctxt;";

//得到路径数组

String[] fileRoot = strsplit(";");

String[] fileName = null;

for(int i = 0;i < fileRootlength;i++){

if(fileRoot[i] != null){

fileName = fileRoot[i]split("/");

//得到最终需要的文件名

Systemoutprintln (fileName[fileNamelength-1]);

}

}

}

}

使用DOS命令中的dir就可以生成这样的文本文件。下面介绍具体 *** 作方法。

1以Windows

XP *** 作系统为例,单击“开始|运行”,输入cmd,如图1所示,然后单击“确定”。

图1

开始cmd命令

3在命令提示符窗口中输入以下命令,如图2所示。

dir

d:

>c:filelisttxt

图2

用此命令生成列表文件

这样就在C:盘根目录下生成了一个名为“filelisttxt”的文本文件,该文件中即包含D:盘的文件夹列表。

如果希望将D:盘中子目录中的文件和文件夹列表也全部列出来,可以在命令提示符窗口中输入以下命令。

dir

d:

/s

>c:filelisttxt

如果使用下面的命令,即加一个/b,则会生成一个简单的文件名列表,不包括其它信息,这种方法可能更加实用一些。

dir

d:

/s

/b

>c:filelisttxt

生成文本文件后,就可以将该文件中的内容拷贝到Excel中以备日后查询,或者将该文件作为一个对象插入到Excel工作表中。这样以后就可以快速找到所需要的文件了。

以上就是关于用C语言如何从路径名中分离文件名全部的内容,包括:用C语言如何从路径名中分离文件名、java代码实现从路径字符串中获取文件名称、如何用CMD提取一个文件路径的文件名并赋值 高分送上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存