在C#文件操作的过程中或者Asp.Net文件的处理过程中,有时候知道文件的完整路径信息后,需要从完整路径中分离出文件名以及文件的后缀名等信息,此文将简要介绍C#语言如何从文件路径中分离出文件名以及文件对应的后缀名。在过程中主要使用到C#的Linq扩展方法LastIndexOf方法。

首先介绍扩展方法LastIndexOf方法:该方法主要用于查找符合条件的最后一个索引位置信息,如果字符串中存在被查找的目标则返回最后一个符合条件的索引位置,如果未找到,则返回-1。

Substring方法则是C#中截取字符串的方法,可以指定截取字符串的起始索引位置以及截取长度等。

(1)从文件路径中获取文件名的C#代码如下:

string filePath = "C:\\Files\\test.xls";

int lastIndex = filePath.LastIndexOf("\\");//获取双斜杠所在的最后的一个索引位置

string fileName = filePath.Substring(lastIndex + 1);//截取上述索引位置+1后面的字符串即为文件名。

上述程序代码运行结果为:fileName=“test.xls”。

(2)从文件路径中获取文件后缀名信息,在(1)的代码的基础上继续获取文件后缀名。

int houzhuiIndex = fileName.LastIndexOf(".");//获取文件名中的点号的最后一个索引位置

string fileExt = fileName.Substring(houzhuiIndex);//获取文件后缀名

从程序运行结果来看,上述程序运行结果为fileExt=“.xls”,即获取的文件后缀名为.xls。

c#文件名去掉后缀_C#如何从文件路径中分离出文件名以及文件扩展名相关推荐

  1. 如何从完整的文件路径中分离文件名和路径名?

    从路径中分离文件名: CString GetFileName(CString pathname)  {  for( int i=pathname.GetLength()-1; i>=0; i-- ...

  2. c#文件名去掉后缀_C#文件后缀名的详细介绍

    .sln:解决方案文件,为解决方案资源管理器提供显示管理文件的图形接口所需的信息. .csproj:项目文件,创建应用程序所需的引用.数据连接.文件夹和文件的信息. .aspx:Web 窗体页由两部分 ...

  3. c#文件名去掉后缀_C# 怎么去掉文件名后缀

    public class test { private static List getData(String path) { List list = new ArrayList<>(); ...

  4. vba 检查一个文件夹中的文件在另一个文件夹中是否存在(不含扩展名)

    Sub test()Dim Mypath, MyName Dim n As Integer n = 0 Dim MyStr() As String, wz As IntegerMypath = Thi ...

  5. python从文件路径中提取文件名、所在文件夹

    需求 有的时候我们想从文件路径中提取出包含扩展的文件名,有的时候需要不包括扩展的文件名,还有的时候想要获取文件所在目录,在python中如何快速实现呢? 实现 我们有如下路径 D:\Worksheet ...

  6. 用C语言输出当前文件夹中所有的文件名opendir

    用C语言输出当前文件夹中所有的文件名 使用opendir() #include <stdio.h> #include <dirent.h> #include <sys/t ...

  7. CMD查看当前文件路径下的所有文件名

    介绍 我们知道Linux系统下查看当前文件路径下的所有文件名,可以用ls或ll来查看,那么CMD中怎么查看当前路径下的所有文件呢? 方案 使用 dir 命令即可 效果如下:

  8. Python提取文件夹中的所有文件名输出到excel

    Python提取文件夹中的所有文件名输出到excel import os import openpyxldef getfilelist(dir,file_out,sheet_out):filelist ...

  9. c语言字符串路径打开本地文件,C语言文件路径中的”/“和“\“

    在不同系统的情况系   windows下是\,linux和unix下是/  但在win中没有本质区别. 但是由于   \   也是转义字符的起始字符,  所以, 路径中的   \   通常需要使用   ...

最新文章

  1. 总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
  2. html+css实现响应式布局入门
  3. [转]Java Web基础——Action+Service +Dao三层的功能划分
  4. powerdesigner 16设计mysql数据库_PowerDesigner16 连接MySql 报错
  5. Linux 安装 MySQL 以及 一些常见问题解决方案
  6. (附源码)Flutter Demo
  7. kronecker引理证明_连续型Kronecker引理
  8. 微服务究竟是“灵丹”还是“毒药”?
  9. C# 实现登录并跳转界面
  10. 六年工作经验总结分享,希望可以帮到你
  11. 这是一篇系统的追热点方法论
  12. IOS 清理CALayer、CAShapeLayer的sublayers
  13. 前端上传图片并修改名字(数据库的图片名字,并非原图片名字)
  14. 5-10 计算存款利息 (10分)
  15. 往日学习=【iptables实验part3-搭建简单蜜罐网络】
  16. web4.0之万能密码登录
  17. 计算机常用术语中英对照
  18. 论文笔记:MPRNet: Multi-Stage Progressive Image Restoration
  19. python中的for语句涉及的序列可以是( )-Python for循环语句
  20. 独立站SaaS系统站群模式怎么玩

热门文章

  1. 数据结构队列之企业级应用--优先队列
  2. mini《猜字》游戏,谁玩谁迷糊
  3. 【大一上】C++小知识点
  4. / ./ ../路径含义
  5. 怪盗基德的滑翔翼 线性DP 最长上升子序列
  6. Another Redis Desktop Manager 链接redis,redis集群链接后用显示不全的问题
  7. 互联网公司数据安全保护新探索
  8. 【工具使用】Word 排版
  9. 万能通用网关系统!就该这么设计,稳的一批!
  10. 到底什么是5G LAN?