C# 获取文件名及扩展名

C#通过文件路径获取文件名
string fullPath = @"/WebSite1/Default.aspx";string filename = System.IO.Path.GetFileName(fullPath);//文件名 “Default.aspx”
string extension = System.IO.Path.GetExtension(fullPath);//扩展名 “.aspx”
string fileNameWithoutExtension = System.IO.Path.GetFileNameWithoutExtension(fullPath);// 没有扩展名的文件名 “Default”string aFirstName = aFile.Substring(aFile.LastIndexOf("\\") + 1, (aFile.LastIndexOf(".") - aFile.LastIndexOf("\\") - 1)); //文件名
string aLastName = aFile.Substring(aFile.LastIndexOf(".") + 1, (aFile.Length - aFile.LastIndexOf(".") - 1)); //扩展名string strFilePaht="文件路径";
Path.GetFileNameWithoutExtension(strFilePath);这个就是获取文件名的还有的就是用Substring截取
strFilePaht.Substring(path.LastIndexOf("\\") + 1, path.Length - 1 - path.LastIndexOf("\\"));
strFilePaht.Substring(path.LastIndexOf("."), path.Length - path.LastIndexOf("."));或者用openFileDialog1.SafeFileName这样就能取到该文件的所在目录路径
string path1 = System.IO.Path.GetDirectoryName(openFileDialog1.FileName) + @"\";string path = Path.GetFileName("C:\My Document\path\image.jpg"); //只获取文件名image.jpg/
string fullPath = @"\WebSite1\Default.aspx";string filename = System.IO.Path.GetFileName(fullPath);//文件名 “Default.aspx”
string extension = System.IO.Path.GetExtension(fullPath);//扩展名 “.aspx”
string fileNameWithoutExtension = System.IO.Path.GetFileNameWithoutExtension(fullPath);// 没有扩展名的文件名 “Default”/

System.IO.Path.GetFileNam(filePath) //返回带扩展名的文件名 
System.IO.Path.GetFileNameWithoutExtension(filePath) //返回不带扩展名的文件名 
System.IO.Path.GetDirectoryName(filePath) //返回文件所在目录/

//获取当前进程的完整路径,包含文件名(进程名)。
string str = this.GetType().Assembly.Location;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)//获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。
string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。
string str = System.Environment.CurrentDirectory;
result: X:\xxx\xxx (.exe文件所在的目录)//获取当前 Thread 的当前应用程序域的基目录,它由程序集冲突解决程序用来探测程序集。
string str = System.AppDomain.CurrentDomain.BaseDirectory;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")//获取和设置包含该应用程序的目录的名称。
string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str = System.Windows.Forms.Application.StartupPath;
result: X:\xxx\xxx (.exe文件所在的目录)//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str = System.Windows.Forms.Application.ExecutablePath;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)//获取应用程序的当前工作目录(不可靠)。
string str = System.IO.Directory.GetCurrentDirectory();
result: X:\xxx\xxx (.exe文件所在的目录)//直接打开文件 
System.Diagnostics.Process.Start("C:\\My Document\\path\\image.jpg"); //打开此文件。//直接打开文件位置
System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo("Explorer.exe");
psi.Arguments = "/e,/select," + "C:\\My Document\\path\\image.jpg";
System.Diagnostics.Process.Start(psi);
转自http://libushuang.cnblogs.com

 

转载于:https://www.cnblogs.com/dearzhoubi/p/8579255.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/453249.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android11 rom,小米打造基于安卓11的ROM来了:米10尝鲜

原标题:小米打造基于安卓11的ROM来了:米10尝鲜据XDA报道,距离Android 11正式版发布还有几天时间,9月8日正式面向Pixel 2、Pixel 3、Pixel 4和Pixel 3a等机型推送Android 11正式版。另一方面,各大手机品牌已经紧锣密鼓开…

基于 HTML5 WebGL 的 3D 服务器与客户端的通信

这个例子的初衷是模拟服务器与客户端的通信,我把整个需求简化变成了今天的这个例子。3D 机房方面的模拟一般都是需要鹰眼来辅助的,这样找产品以及整个空间的概括会比较明确,在这个例子中我也加了,这篇文章就算是我对这次项目的一个…

什么是顺序执行以及其特点

顺序执行是程序的一种执行方式。是把一个具有独立功能的程序独占处理机直至最终结束的过程称为程序的顺序执行 顺序执行的特点:顺序性:程序顺序执行时,其执行过程可看作一系列严格按程序规定的状态转移过程,也即是每执行一条指令&…

一年成为Emacs高手(像神一样使用编辑器)

作者: 陈斌(redguardtoo) 更新时间: 2012-02-10 五 原创时间: 2012-01-31 周二 15:08 很容易.一年多前我还在Vi阵营,偶尔使用Emacs还总是忘记退出(C-x C-c)的快捷键,但是一年后我跨入高手行列. 现在网上很多中文文章都是和你强调Emacs有多牛,以激发你的兴趣.最有名的大概是王垠…

七种常见的核酸序列蛋白编码能力预测工具 | ncRNAs | lncRNA

注:这些工具的应用都是受限的,有些本来就是只能用于预测动物,在使用之前务必用ground truth数据来测试一些。我想预测某一个植物的转录本,所以可以拿已经注释得比较好的拟南芥来测试一下。(测试的结果还是比较惊人的&a…

android预览界面编译出错,Android O预览findViewById编译错误

我试图测试Android O Developer Preview的第二阶段。 项目创建后,我只是点击了构建并运行但我没有任何成功。Android默认生成的代码如下:Toolbar toolbar (Toolbar) findViewById(R.id.toolbar);发生编译错误。Error:(18, 37) error: reference to find…

中断与异常的区别

中断: 中断是CPU(硬件)所具备的功能 ,它是指系统停止当前正在运行的程序而转向其他服务,可能是因 为优先级高的请求服务了,或者是因为人为安排中断。中断是属于正常现象。主要由CPU以外的事件引起的 中断…

寒武纪找到了引领中国AI芯片走向世界的路

大约6亿年前在地质学上被称作“寒武纪”的时代,大量无脊椎动物在短时间内出现“生命大爆发”。如今,“寒武纪”这个名字再次被人们提及,它源自中科院计算所研发的人工智能芯片处理器的命名,意喻人工智能即将迎来大爆发的时代。“寒…

浅谈PPM (Project Portfolio Management)

前言: 本文以纯理论性的PPM讲解为主,不会涉及到具体如何实施,我会在以后介绍详细的PPM实施方案介绍。 PPM,可能很多人并不清楚甚至可能没听说过,这是一个近些年才流行起来的概念,是Project Portfolio Mana…

poj 3071 Football

http://poj.org/problem?id3071 2^n 支足球队比赛,共比n场,第一场1号与2号比,3号与4号比…… 每场胜出者进入下一场,输者淘汰 每一场都是相邻的两个队伍比拼 已知任意两个队伍比拼获胜的概率 求最后哪只队伍获胜的概率最大 dp[i]…

进程调度与作业调度

进程调度是真正让某个就绪状态的进程到处理机上运行,而作业调度只是使作业具有了竞争处理机的机会。进程调度(又称微观调度、低级调度、短程调度): 是按照某种调度算法从就绪状态的进程中选择一个进程到处理机上运行。负责进程调…

tensorflow源码安装

主要参考:https://www.tensorflow.org/install/install_sources#ConfigureInstallation卸载tensorflow sudo pip uninstall tensorflow 安装git 安装git时记得先安装,后更新系统 sudo apt install git安装jdk8: myubuntu:~$ java myubun…

Makefile学习之通配符和自动变量

规则中的通配符 “*” ,“?” ,“ [...]”, " % " , " wildcard " 1.“*” *.c表示所有后缀为.C的文件; 如果文件中用到通配符,使用“\*”; 2.通配符在变量中的使用; objects*.c 注意…

英语中十二个月名称的由来

转自网络,原出处不详。 公历一年有12个月,但不少人并不知道12 个月的英语名称的来历。公历起源于古罗马历法。罗马的英语原来只有10 个月,古罗马皇帝决定增加两个月放在年尾,后来朱里斯*凯撒大帝把这两个月移到年初,…

进程和程序的关系

1 进程是一个动态概念,而程序是一个静态概念。 2 进程具有并行特征,程序没有。 3 进程是竞争资源的基本单位。 4 一个程序对应多个进程,一个进程为多个程序服务。

Android怎么插手机卡,魅蓝E手机卡怎么装 魅蓝E手机SIM卡安装图文教程

昨天下午,魅族发布了全新系列魅蓝手机——魅蓝E,定位魅蓝高端产品线,售价1299元,李楠号称魅蓝E采用三四千元的旗舰机工艺,外观/屏幕/拍照提升明显。此外,魅蓝E依旧支持全网通双卡双待。那么魅蓝E怎么插卡/装…

快速幂总结

快速幂总结 快速幂这个东西比较好理解,但实现起来到不老好办,记了几次老是忘,今天把它系统的总结一下防止忘记。 首先,快速幂的目的就是做到快速求幂,假设我们要求a^b,按照朴素算法就是把a连乘b次,这样一来…

第三章

一.项目前期的主要工作 1.现状分析 ①.硬件分析 ②.软件分析 2.需求收集 3.粗略设计 ①.体系结构分析 ②.硬件(网络)设计 ③.应用系统设计 ④.安全设计 ⑤.配套设计 4.可行性分析 二.结构的项目前期实例 1.组织分析 3.需求收集 4.粗略设计 ①.系统体系结…

进程的静止和活动状态

进程有3个主要状态,即就绪,执行和等待。当一个进程被创建的时候,处于就绪状态,严格地说是静止就绪状态,等到被激活,该进程就处于活动就绪状态,如果时间片轮到该进程,那么该进程就执行…

荣耀magic3会用鸿蒙,赵明:荣耀Magic3芯片领先行业,大家看到以后会换掉手机!...

荣耀CEO赵明亲自参加高通2021技术峰会,宣布与高通达成战略合作,未来全系产品采用高通平台。赵明同时透露未来的产品动向,不排除未来与华为继续合作,采用鸿蒙操作系统的可能。赵明表示,Android操作系统依旧是荣耀的首选…