博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 获取文件路径,读取项目中某程序集下文件
阅读量:4921 次
发布时间:2019-06-11

本文共 3244 字,大约阅读时间需要 10 分钟。

获取文件路径  

-------------------------------------------------------------------------

winform获取文件路径:

string str1 =Process.GetCurrentProcess().MainModule.FileName;//获得当前执行的exe的文件名。

string str2=Environment.CurrentDirectory;//获取和设置当前目录的完全限定路径。
string str3=Directory.GetCurrentDirectory();//获取应用程序的当前工作目录。
string str4=AppDomain.CurrentDomain.BaseDirectory;//获取基目录,它由程序集冲突解决程序用来探测程序集。
string str5=Application.StartupPath;//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str6=Application.ExecutablePath;//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str7=AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//获取或设置包含该应用程序的目录的名称。

“Application.StartupPath”:获取当前应用程序所在目录的路径,最后不包含“\”;

“Application.ExecutablePath ”:获取当前应用程序文件的路径,包含文件的名称;
“AppDomain.CurrentDomain.BaseDirectory”:获取当前应用程序所在目录的路径,最后包含“\”;
“System.Threading.Thread.GetDomain().BaseDirectory”:获取当前应用程序所在目录的路径,最后包含“\”;
“Environment.CurrentDirectory”:获取当前应用程序的路径,最后不包含“\”;
“System.IO.Directory.GetCurrentDirectory”:获取当前应用程序的路径,最后不包含“\”;

String[] files = System.IO.Directory.GetFiles(path) //返回指定目录下的文件名

string str = System.IO.Path.GetFileNameWithoutExtension(path);//返回不具有扩展名的指定路径字符串的文件名

取得控制台应用程序的根目录方法    

方法1、Environment.CurrentDirectory 取得或设置当前工作目录的完整限定路径

方法2、AppDomain.CurrentDomain.BaseDirectory 获取基目录,它由程序集冲突解决程序用来探测程序集

取得Web应用程序的根目录方法

方法1、HttpRuntime.AppDomainAppPath.ToString();//获取承载在当前应用程序域中的应用程序的应用程序目录的物理驱动器路径。用于App_Data中获取 D:\wwwroot\DllTest\

方法2、Server.MapPath("") 或者 Server.MapPath("~/");//返回与Web服务器上的指定的虚拟路径相对的物理文件路径 D:\wwwroot\DllTest
方法3、Request.ApplicationPath;//获取服务器上ASP.NET应用程序的虚拟应用程序根目录

取得WinForm应用程序的根目录方法

1、Environment.CurrentDirectory.ToString();//获取或设置当前工作目录的完全限定路径

2、Application.StartupPath.ToString();//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称
3、Directory.GetCurrentDirectory();//获取应用程序的当前工作目录
4、AppDomain.CurrentDomain.BaseDirectory;//获取基目录,它由程序集冲突解决程序用来探测程序集
5、AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//获取或设置包含该应用程序的目录的名称
其中:以下两个方法可以获取执行文件名称
1、Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名。
2、Application.ExecutablePath;//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称

3、System.IO.Path类中有一些获取路径的方法,可以在控制台程序或者WinForm中根据相对路径来获取绝对路径

获取web物理路径的方法

System.Web.HttpContext.Current.Server.MapPath("~/a/b.config");//获取指定虚拟路径下对应的实际物理路径

 读取项目中某程序集下文件

--------------------------------------------------------------------------

例如:在一个项目中,程序集A,程序集B   在程序集A中要读取程序集B中的某一模板文件(目录:B\EmailTempletes\JobsubscritionList.templete) 

解决方法如下:

///         /// 读取模版        ///         /// 模版名称        /// 
模版内容
private static string ReadEmbedFile(string fileName) { fileName = "B.EmailTempletes.JobsubscritionList.templete";//为方便我直接赋值测试了 Assembly assembly = Assembly.Load("Linkin.Service"); Stream fs = null; StreamReader sr = null; try { fs = assembly.GetManifestResourceStream(fileName); sr = new StreamReader(fs); return sr.ReadToEnd(); } catch { return null; } finally { if (fs != null) fs.Dispose(); if (sr != null) sr.Dispose(); } }

 

转载于:https://www.cnblogs.com/xishuqingchun/p/4063413.html

你可能感兴趣的文章
白盒测试的学习之路----(三)优化代码
查看>>
矩阵的旋转(90度)输出:
查看>>
纯虚函数(pure virtual function )和抽象类(abstract base class)
查看>>
《程序员修炼之道--从小工到专家》阅读笔记01
查看>>
【转】中国人唯一不认可的成功——就是家庭的和睦,人生的平淡
查看>>
[物理学与PDEs]第2章第5节 一维流体力学方程组的 Lagrange 形式 5.4 一维粘性热传导流体力学方程组的 Lagrange 形式...
查看>>
[再寄小读者之数学篇](2014-06-20 Beta 函数)
查看>>
asp.net内置对象Server
查看>>
SPOJ RATING
查看>>
POJ 1523
查看>>
redis--小白博客
查看>>
HDOJ-1013
查看>>
sudo: sorry, you must have a tty to run sudo
查看>>
【JBPM4】流程部署
查看>>
OneDrive网页版打不开的解决办法
查看>>
正则表达式-手机号
查看>>
Mac下使用Typora的一些简单操作
查看>>
python常用工具库介绍
查看>>
【转】android权限列表
查看>>
SMB横向利用
查看>>