C#如何获取文件全路径、目录、扩展名、文件名称

 更新时间:2023年07月13日 09:18:46   作者:熊思宇  
这篇文章主要介绍了C#如何获取文件全路径、目录、扩展名、文件名称问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

C#获取文件全路径、目录、扩展名、文件名称

代码:

using System;
using System.IO;
class Program
{
    static void Main(string[] args)
    {
        //获取当前运行程序的目录
        string fileDir = Environment.CurrentDirectory;
        Console.WriteLine("当前程序目录:" + fileDir);
        //一个文件目录
        string filePath = "C:\\JiYF\\BenXH\\BenXHCMS.xml";
        Console.WriteLine("该文件的目录:" + filePath);
        string str = "获取文件的全路径:" + Path.GetFullPath(filePath);   //-->C:\JiYF\BenXH\BenXHCMS.xml
        Console.WriteLine(str);
        str = "获取文件所在的目录:" + Path.GetDirectoryName(filePath); //-->C:\JiYF\BenXH
        Console.WriteLine(str);
        str = "获取文件的名称含有后缀:" + Path.GetFileName(filePath);  //-->BenXHCMS.xml
        Console.WriteLine(str);
        str = "获取文件的名称没有后缀:" + Path.GetFileNameWithoutExtension(filePath); //-->BenXHCMS
        Console.WriteLine(str);
        str = "获取路径的后缀扩展名称:" + Path.GetExtension(filePath); //-->.xml
        Console.WriteLine(str);
        str = "获取路径的根目录:" + Path.GetPathRoot(filePath); //-->C:\
        Console.WriteLine(str);
        Console.ReadKey();
    }
}

C#批量修改文件后缀

一个文件夹里有多个文件,如果想把它们的后缀全部修改,在C#里写几行代码即可

直接附上代码:

using System;
using System.IO;
using Microsoft.VisualBasic.Devices;
namespace ChangeSuffix
{
    class Program
    {
        static public string path = @"E:\files";
        static void Main(string[] args)
        {
            Computer myComputer = new Computer();
            DirectoryInfo dir = new DirectoryInfo(path);
            FileInfo[] files = dir.GetFiles();
            foreach (var file in files)
            {
                string newName = file.Name.Replace(".xlsx", ".txt");      //.xlsx修改成.txt
                if(newName != file.Name)
                    myComputer.FileSystem.RenameFile(file.FullName, newName);
            }
            Console.ReadLine();
        }
    }
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C# 常用日期时间函数(老用不熟)

    C# 常用日期时间函数(老用不熟)

    C# 常用日期时间函数(老用不熟) ,需要的朋友可以参考下。
    2009-09-09
  • 使用C#中的Flags特性

    使用C#中的Flags特性

    这篇文章介绍了使用C#中的Flags特性,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#中Linq的去重方式Distinct详解

    C#中Linq的去重方式Distinct详解

    本文详细讲解了C#中Linq的去重方式Distinct,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#和JavaScript实现交互的方法

    C#和JavaScript实现交互的方法

    最近做一个小项目不可避免的需要前端脚本与后台进行交互。由于是在asp.net中实现,故问题演化成asp.net中jiavascript与后台c#如何进行交互。
    2015-05-05
  • 基于c#实现的九九乘法表(简单实例)

    基于c#实现的九九乘法表(简单实例)

    本文主要分享了基于c#实现的九九乘法表,代码简洁,需要的朋友可以参考下,希望对大家有所帮助
    2016-12-12
  • C#应用BindingSource实现数据同步的方法

    C#应用BindingSource实现数据同步的方法

    这篇文章主要介绍了C#应用BindingSource实现数据同步的方法,需要的朋友可以参考下
    2014-08-08
  • 浅谈C#中堆和栈的区别(附上图解)

    浅谈C#中堆和栈的区别(附上图解)

    C#中栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义;堆是程序运行期间动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小
    2014-09-09
  • AnyChat的视频会议程序实例详解

    AnyChat的视频会议程序实例详解

    AnyChat是一款跨平台的音视频解决方案。通过本篇文章给大家介绍AnyChat的视频会议程序,涉及到anychat相关知识,对anychat视频会议相关知识感兴趣的朋友一起学习吧
    2016-01-01
  • C#实现连接SQL Server2012数据库并执行SQL语句的方法

    C#实现连接SQL Server2012数据库并执行SQL语句的方法

    这篇文章主要介绍了C#实现连接SQL Server2012数据库并执行SQL语句的方法,结合实例形式较为详细的分析了C#连接SQL Server2012数据库并执行查询、插入等操作的相关实现技巧,需要的朋友可以参考下
    2017-10-10
  • C# 显示、隐藏窗口对应的任务栏

    C# 显示、隐藏窗口对应的任务栏

    WPF中全屏窗口,会自动隐藏任务栏,那非全屏窗口如何隐藏任务栏?甚至有没有一种场景,隐藏任务后自定义一套系统任务栏来显示?这篇文章主要介绍了C# 显示、隐藏窗口对应的任务栏,需要的朋友可以参考下
    2021-10-10

最新评论