如何在应用程序安装目录中创建文件夹

时间:2010-07-27 11:41:36

标签: c# desktop-application

我在c#windows应用程序中完成了一个应用程序。在此我创建了一个名为ACHWINAPP的项目。我已经写了一些代码来获取我需要的路径如下

strFilePath = Directory.GetCurrentDirectory();
strFilePath = Directory.GetParent(strFilePath).ToString();
strFilePath = Directory.GetParent(strFilePath).ToString();
strFilePath = strFilePath + "\\ACH\\";

但是当我为项目创建一个设置并安装在一个目录中时,即一些F:\我得到的错误ACH未找到。

我需要的是当用户点击保存时我想将文件保存在他安装我的安装文件的目录中,文件夹名为ACH 请任何想法..

3 个答案:

答案 0 :(得分:4)

你的意思是:

Application.StartupPath

可能不是您想要的......但它是您的可执行文件所在的文件夹

链接:http://msdn.microsoft.com/en-us/library/system.windows.forms.application.startuppath.aspx

答案 1 :(得分:2)

这是一段相对简单的代码:

string currentPath = Directory.GetCurrentDirectory();
if (!Directory.Exists(Path.Combine(currentPath, "ACH")))
    Directory.CreateDirectory(Path.Combine(currentPath, "ACH"));
//at this point your folder should exist

当然,可能有很多原因导致您无法创建文件夹,包括没有足够的权限来执行此操作。因此,在处理文件系统时,您还应该练习安全编码并捕获异常。

答案 2 :(得分:0)

很难准确理解你想要的东西。也许使用this question的答案来加载当前正在运行的应用程序旁边的文件?

否则,使用Console.WriteLine()跟踪(或者如果您使用Visual Studio,添加断点)以找出strFilePath的初始值。这可能不是你所期望的。

使用Path.Combine(path1, path2)创建路径,而不是“添加”字符串:

strFilePath = Path.Combine(strFilePath, "ACH");