C# 从字符串中分离文件路径、文件名及扩展名的操作

 更新时间:2024年09月20日 09:58:32   作者:PfCoder  
在C#中,处理文件时经常需要分离文件路径、文件名和扩展名,通过使用Microsoft.Win32命名空间和字符串处理方法如Substring、IndexOf()和LastIndexOf(),可以有效地获取和操作这些信息,本文介绍C# 字符串中分离文件路径,感兴趣的朋友一起看看

C# 从字符串中分离文件路径、文件名及扩展名

对文件进行操作时,首先要获取文件路径信息,然后创建文件对象,通过IO流将数据读取大宋内存中并进行处理。在操作文件时,可能还需要提取文件的一些信息,比如,文件路径,文件名,扩展名等等,实例如下:

在这里插入图片描述

主要用到 打开文件选择对话框,可以选择一个或多个文件,使用需引入命名空间:Microsoft.Win32,以及对获取的文件路径进行截取Substring方法,代码如下

private void btn_select_file_Click(object sender, EventArgs e)
{
    OpenFileDialog openFileDialog = new OpenFileDialog();
    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        //string filePathALL = openFileDialog.FileName;
        string filePathALL = "C:\\decktop\\file\\books\\C#学习.exe";
        //文件路径
        string str_path = filePathALL.Substring(0, filePathALL.LastIndexOf("\\") + 1);
        //文件名字
        string str_name = filePathALL.Substring(filePathALL.LastIndexOf("\\") + 1,
                    filePathALL.LastIndexOf(".") - (filePathALL.LastIndexOf("\\") + 1));
        //文件扩展名
        string str_exc = filePathALL.Substring(filePathALL.LastIndexOf(".") + 1,
                    filePathALL.Length - filePathALL.LastIndexOf(".") - 1);
        //string str_exc = filePathALL.Split('.')[1].ToString();   // 也可以使用Split方法
        lbl_file_path.Text = "文件路径:" + str_path;
        lbl_file_name.Text = "文件名称:" + str_name;
        lbl_file_exc.Text = "文件扩展时:" + str_exc;
    }
}

IndexOf()方法与LastIndexOf()方法的异同:
都是用来查找字符或字符串在指定字符串中的索引,如果未能找到返回-1。不同在于IndexOf()从指定字符串的前端往后端找到匹配的第一个的索引,LastIndexOf()从指定字符串的后端往前端找到匹配的第一个的索引。

到此这篇关于C# 从字符串中分离文件路径、文件名及扩展名的文章就介绍到这了,更多相关C# 字符串中分离文件路径内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#实现将商品金额小写转换成大写的方法

    C#实现将商品金额小写转换成大写的方法

    这篇文章主要介绍了C#实现将商品金额小写转换成大写的方法,涉及C#数组与字符串的相关操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-08-08
  • C#操作FTP出现500错误解决办法

    C#操作FTP出现500错误解决办法

    最近在做项目的时候需要操作ftp进行文件的上传下载,但在调用using (var response = (FtpWebResponse)FtpWebRequest.GetResponse())的时候总是出现"远程服务器返回错误:(550)文件不可用(例如,未找到文件,无法访问文件)"的异常
    2014-03-03
  • C# Xamarin利用ZXing.Net.Mobile进行扫码的方法

    C# Xamarin利用ZXing.Net.Mobile进行扫码的方法

    这篇文章主要介绍了C# Xamarin利用ZXing.Net.Mobile进行扫码的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • 详解C#编程中异常的创建和引发以及异常处理

    详解C#编程中异常的创建和引发以及异常处理

    这篇文章主要介绍了C#编程中异常的创建和引发以及异常处理,文中介绍了Catch块和Finally块等基本的异常处理要点,需要的朋友可以参考下
    2016-02-02
  • C#之Socket客户端全过程

    C#之Socket客户端全过程

    这篇文章主要介绍了C#之Socket客户端全过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • 使用Topshelf框架操作Windows服务

    使用Topshelf框架操作Windows服务

    这篇文章介绍了使用Topshelf框架操作Windows服务的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • c#生成自定义图片方法代码实例

    c#生成自定义图片方法代码实例

    在本篇文章中我们给大家分享了关于c#生成自定义图片方法的相关内容,有需要的朋友们可以参考下。
    2018-10-10
  • C#使用应用RSA和ECC进行数字签名和签名验证的示例详解

    C#使用应用RSA和ECC进行数字签名和签名验证的示例详解

    开发中需要用到数字签名和验签,这篇博客提供使用RSA和ECDSA(椭圆曲线数字签名算法,也是椭圆曲线加密的常见应用)进行数字签名和签名验证的C#程序示例,同时,也会包含密钥生成和保存的例程,需要的朋友可以参考下
    2025-09-09
  • Unity UI或3D场景实现跟随手机陀螺仪的晃动效果

    Unity UI或3D场景实现跟随手机陀螺仪的晃动效果

    这篇文章主要介绍了Unity UI或3D场景实现跟随手机陀螺仪的晃动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • C#使用round函数四舍五入的方法

    C#使用round函数四舍五入的方法

    这篇文章主要介绍了C#使用round函数四舍五入的方法,实例分析了C#中round函数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03

最新评论