.NET中的工作目录一览!
定义: 当前工作目录——进行某项操作的目的目录,会随着OpenFileDialog、SaveFileDialog等对象所确定的目录而改变。
当前执行目录——该进程从中启动的目录,即文件自身所在目录。工作目录与执行目录可以不同,例如一个人住在北京,但他的工作地点不一定在北京,可能在天津。
方法:
1、获取和设置当前工作目录
a) System.IO.Directory.GetCurrentDirectory()
说明:获取应用程序的当前工作目录的完全限定路径。该方法是对Win32 API的GetCurrentDirectory函数的一个封装。
例如:'"C:\Documents and Settings\Administrator\My Documents"
b) System.Environment.CurrentDirectory
说明:获取或设置当前工作目录的完全限定路径。该属性内部调用的就是System.IO.Directory.GetCurrentDirectory()方法,二者是效果是等价的。
例如:'"C:\Documents and Settings\Administrator\My Documents"
c) System.IO.Path.GetFullPath(".")
说明:获取指定路径字符串的绝对路径。也可以用GetFullPath(".\"),GetFullPath(".\\")
例如:'"C:\Documents and Settings\Administrator\My Documents"
2、获取和设置当前执行目录
a) System.Windows.Forms.Application.StartupPath
说明:获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。常用于WinForm.
例如:'"D:\Projects\MyTest\bin"
b) System.AppDomain.CurrentDomain.BaseDirectory
说明:获取基目录,它由程序集冲突解决程序用来探测程序集。返回路径末尾带“\”
例如:'"D:\Projects\MyTest\bin\"
c) System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase
说明:获取或设置包含该应用程序的目录的名称。返回路径末尾带“\”
例如:'"D:\Projects\MyTest\bin\"
3、获取和设置当前执行目录,包括可执行文件名
a) System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
说明:获取模块的完整路径。包括可执行文件的名称。
例如:'"D:\Projects\MyTest\bin\MyTest.exe"
b) System.Windows.Forms.Application.ExecutablePath
说明:获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
例如:'"D:\Projects\MyTest\bin\MyTest.exe"
c) System.Reflection.Assembly.GetExecutingAssembly().Location
说明:如果包含清单的已加载文件没有被影像复制,则获取该文件的基本代码格式的位置。
例如:'"D:\Projects\MyTest\bin\MyTest.exe"
d) System.Reflection.Assembly.GetExecutingAssembly().CodeBase
说明:获取最初指定的程序集的位置,例如,在AssemblyName对象中指定的位置。
例如:'"file:///D:/Projects/MyTest/bin/MyTest.exe"
.NET中的工作目录一览!的更多相关文章
- python中修改工作目录
- VS的工作目录和输出目录
C+ +项目,解决方案总文件夹下就只包含解决方案配置文件sln和一个项目总文件夹和一个Debug文件夹以及一个Release文件夹(共四个东东,其中Debug和Release文件夹中存放最终生成的结果 ...
- VS工作目录,输出目录
C++项目,解决方案总文件夹下就只包含解决方案配置文件sln和一个项目总文件夹和一个Debug文件夹以及一个Release文件夹(共四个东东,其中Debug和Release文件夹中存放最终生成的结果e ...
- Linux命令学习之路——变更工作目录:cd
使用权限:所有角色 使用方式:cd [ targetDir ] 作用:该命令用于在Linux中切换工作目录 注意点: 1.targetDir代表目标目录,可以采用绝对路径或相对路径表示: 2.当tar ...
- Jupyter修改工作目录(Anaconda环境)
Anaconda安装时未添加环境变量 1.打开Anaconda Prompt 输入jupyter notebook --generate-config (base) C:\Users\Sroxi> ...
- QT中QProcess调用命令行的痛苦经历(调用Winrar,设置工作目录,获得输出,注意引号与括号,等等)
QT中QProcess调用命令行的痛苦经历 阅读目录 创建压缩包的方法 在QT中调用命令行 在QT中调用C++创建的dll 在QT程序中需要将某些目录和文件压缩为一个rar的压缩包,于是想到了在Q ...
- C#中得到程序当前工作目录和执行目录的五种方法
string str="";str += "\r\n" + System.Diagnostics.Process.GetCurrentProcess().Mai ...
- 关于pwd命令小技巧-确认当前工作目录的绝对路径中是否包含软链接目录名
Linux中任何一个命令,当你用心研究到深处时,也许总能有着新的发现或者有趣的用途,如下方的pwd命令 对于pwd命令,大家都知道是用于打印当前的工作目录路径,而且是绝对路径 pwd命令两个选项的,默 ...
- 修改Anaconda3中jupyter的工作目录
1.打开Anaconda Prompt,运行jupyter notebook --generate-config 2.找到当前用户下的.jupter文件夹,打开jupyter_notebook_con ...
随机推荐
- 本地连接虚拟机上面的redis
想做一个抓取系统,想到用redis存储临时数据可能会比较好些,就想着装个虚拟机,在虚拟机上面安装redis,通过本地来访问虚拟机上面的redis. 虚拟机和redis安装成功之后,发现本地怎么都连接不 ...
- java重写equals方法
@Override public int hashCode() { return task.getId(); } @Override public boolean equals(Object obj) ...
- HDU 5761 Rower Bo
传送门 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Special Jud ...
- .net图片验证码生成、点击刷新及验证输入是否正确
①创建ValidateCode.aspx,在ValidateCode.aspx.cs中加入如下代码.生成验证码图片,在页面上输出,输出jpeg格式. protected void Page_Load( ...
- CF 268E Playlist(贪心)
题目链接: 传送门 Playlist time limit per test:1 second memory limit per test:256 megabytes Description ...
- Tomcat 的 ErrorPage 实现原理分析
使用Tomcat,一定见到过404,500的时候,见到过Tomcat提供的错误页面,例如请求的资源找不到的时候,响应状态码为404,这个时候的错误页面是这样的: 这些错误页面是 如何生成及定位展示的 ...
- 自定义JSP标签入门
1.编写一个实现Tag接口的java类 package TagDemo; import javax.servlet.http.HttpServletRequest; import javax.serv ...
- JavaScript学习笔记——变量和数据类型
一.javascript命名规范 1. 严格区分大小写 2. 变量的命名必须以字母或 _或 $开头,余下的部分可以是任意的字母,数字,或者是 _或者是$ 3.不能用关键字或者是保留字命名. 4.jav ...
- JavaWeb学习笔记——Tomcat相关
Tomcat目录分析 1.bin 存放启动和关闭Tomcat的脚本文件 2.conf 存放Tomcat服务器的各种配置文件 3.lib 存放Tomcat服务器的支持jar包 4.logs 存放T ...
- Mysql 与 Python socket
py1.py # -*- coding: utf-8 -*- import sqlalchemy import tushare import pandas import socket import s ...