将硬盘路径转换为应用程序文件夹路径

时间:2012-09-27 05:46:29

标签: c# .net console-application

如何将路径从驱动器转换为应用程序路径?目前我正在创建和访问硬盘上的文件(例如:“D:\ MyFolder \ MyDoc.doc”)。我想在控制台应用程序文件夹中使用此路径。我知道我可以将Server.MapPath用于ASP.NET应用程序。控制台应用程序怎么样?

2 个答案:

答案 0 :(得分:3)

<强> EDITED

如果您想从当前文件夹中读取文件

System.IO.FileStream stream = System.Reflection.Assembly.GetExecutingAssembly().GetFile("filename");

或者您想要获取目录路径

 string path = System.Reflection.Assembly.GetExecutingAssembly().Location;
            var directory = System.IO.Path.GetDirectoryName(path);
            var parentdir = System.IO.Directory.GetParent(directory);

答案 1 :(得分:2)

要避免硬编码路径文件,请将MyDoc.doc放入执行文件夹,然后使用Directory.GetCurrentDirectory()获取执行文件夹:

string directory = Directory.GetCurrentDirectory();
string fileName = Path.Combine(directory, "MyDoc.doc");

其他选择:

string path = Assembly.GetExecutingAssembly().Location;
string directory = Path.GetDirectoryName(path);

或者:

string directory = AppDomain.CurrentDomain.BaseDirectory;

或者:

string directory = Path.GetDirectoryName(Application.ExecutablePath);

获取bin文件夹:

 var bin = Directory.GetParent(directory ).Parent.FullName;