C#文件路径操作详细总结

 更新时间:2014年01月15日 08:46:51   作者:  
本篇文章主要是对C#中的文件路径操作进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助

一、获取当前文件的路径
1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
获取模块的完整路径,包括文件名。

2. System.Environment.CurrentDirectory
获取和设置当前目录(该进程从中启动的目录)的完全限定目录。

3. System.IO.Directory.GetCurrentDirectory()
获取应用程序的当前工作目录。这个不一定是程序从中启动的目录啊,有可能程序放在C:\www里,这个函数有可能返回C:\Documents and Settings\ZYB\,或者C:\Program Files\Adobe\,有时不一定返回什么东东,这是任何应用程序最后一次操作过的目录,比如你用Word打开了E:\doc\my.doc这个文件,此时执行这个方法就返回了E:\doc了。

4. System.AppDomain.CurrentDomain.BaseDirectory
获取程序的基目录。

5. System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase
获取和设置包括该应用程序的目录的名称。

6. System.Windows.Forms.Application.StartupPath
获取启动了应用程序的可执行文件的路径。效果和2、5一样。只是5返回的字符串后面多了一个"\"而已

7. System.Windows.Forms.Application.ExecutablePath
获取启动了应用程序的可执行文件的路径及文件名,效果和1一样。

二、操作环境变量
利用System.Environment.GetEnvironmentVariable()方法可以很方便地取得系统环境变量,如:
System.Environment.GetEnvironmentVariable("windir")就可以取得windows系统目录的路径。

以下是一些常用的环境变量取值:

System.Environment.GetEnvironmentVariable("windir");
System.Environment.GetEnvironmentVariable("INCLUDE");
System.Environment.GetEnvironmentVariable("TMP");
System.Environment.GetEnvironmentVariable("TEMP");
System.Environment.GetEnvironmentVariable("Path");

最后贴出我进行上面操作获得的变量值,事先说明,本人是编写了一个WinForm程序,项目文件存放于D:\Visual Studio Projects\MyApplication\LifeAssistant,编译后的文件位于D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug,最后的结果如下:

1、 System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName=D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug\LifeAssistant.exe

2、System.Environment.CurrentDirectory=D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug

3、System.IO.Directory.GetCurrentDirectory()=D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug

4、System.AppDomain.CurrentDomain.BaseDirectory=D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug\

5、 System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase=D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug\

6、System.Windows.Forms.Application.StartupPath=D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug

7、 System.Windows.Forms.Application.ExecutablePath=D:\Visual Studio Projects\MyApplication\LifeAssistant\bin\Debug\LifeAssistant.exe

System.Environment.GetEnvironmentVariable("windir")=C:\WINDOWS
System.Environment.GetEnvironmentVariable("INCLUDE")=C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\include\
System.Environment.GetEnvironmentVariable("TMP")=C:\DOCUME~1\zhoufoxcn\LOCALS~1\Temp
System.Environment.GetEnvironmentVariable("TEMP")=C:\DOCUME~1\zhoufoxcn\LOCALS~1\Temp
System.Environment.GetEnvironmentVariable("Path")=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\jdk1.5.0\bin;C:\MySQLServer5.0\bin;C:\Program Files\Symantec\pcAnywhere\;C:\Program Files\Microsoft SQL Server\80\Tools\BINN

相关文章

  • c#读取excel数据的两种方法实现

    c#读取excel数据的两种方法实现

    这篇文章主要介绍了c#读取excel数据的两种方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • C# System.TypeInitializationException 异常处理方案

    C# System.TypeInitializationException 异常处理方案

    这篇文章主要介绍了C# System.TypeInitializationException 异常处理方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • C#通过域名获得IP地址的方法

    C#通过域名获得IP地址的方法

    这篇文章主要介绍了C#通过域名获得IP地址的方法,涉及C#中GetHostByName方法的使用技巧,需要的朋友可以参考下
    2015-04-04
  • C#中使用HttpDownLoadHelper下载文件实例

    C#中使用HttpDownLoadHelper下载文件实例

    这篇文章主要介绍了C#中使用HttpDownLoadHelper下载文件的方法,并实例讲述了在webfrom中与在mvc中的实现方法,需要的朋友可以参考下
    2014-10-10
  • c# Bitmap转bitmapImage高效方法

    c# Bitmap转bitmapImage高效方法

    本文主要介绍了c# Bitmap转bitmapImage高效方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • 基于WPF实现拟物音量控件

    基于WPF实现拟物音量控件

    这篇文章主要为大家详细介绍了如何基于WPF实现简单的拟物音量控件,文中的示例代码讲解详细,对我们学习或工作有一定帮助,感兴趣的小伙伴可以了解一下
    2023-05-05
  • c#线程间传递参数详解

    c#线程间传递参数详解

    本篇文章主要是对c#中的线程间传递参数进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • C# 利用Aspose.Words.dll将 Word 转成PDF

    C# 利用Aspose.Words.dll将 Word 转成PDF

    关于word转成pdf的方法网上有很多。大部分需要借助office 2007及以上版本的组件。安装配置起来比较麻烦。今天偶然得之“Aspose.Words.dll”可以实现
    2013-08-08
  • 浅析泛型类接口定义

    浅析泛型类接口定义

    在使用泛型定义类的过程中遇到了不少问题,特记录如下,需要的朋友可以参考下
    2013-07-07
  • C#使用Log4net实现将日志输出到控制台或者文本文档

    C#使用Log4net实现将日志输出到控制台或者文本文档

    Log4net 是一个稳定且功能丰富的日志库,已经存在多年并且被广泛使用,这篇文章主要为大家介绍了如何使用Log4net实现将日志输出到控制台或者文本文档,感兴趣的可以了解下
    2024-03-03

最新评论