设置创建文件夹的路径?

时间:2015-02-01 21:35:08

标签: c# windows forms pdf

我在Windows窗体C#应用程序中创建了一个名为PDF的文件夹,其中放置了许多pdf文件。我正在使用Adobe PDF阅读器COM组件,我想设置当前创建的文件夹(PDF)的路径。

我正在使用它运行的文件的完整路径:

  

“C:/ Users / USER / Documents / Visual Studio 2012 / Projects / PERFEC1.1 / PERFEC1.1 / PDF / RedactionCV.pdf”

但它不适用于其他机器。我该如何解决这个问题?

这是我的代码:

private void btnRedactioncv_Click(object sender, EventArgs e)
{
    this.axAcroPDF1.LoadFile(File_Path);
    this.axAcroPDF1.src = File_path;
    this.axAcroPDF1.setShowToolbar(false);
    this.axAcroPDF1.setView("FitH");
    this.axAcroPDF1.setLayoutMode("SinglePage");
    this.axAcroPDF1.Show();
}

2 个答案:

答案 0 :(得分:0)

保存PDF时,应使用此类代码

string pathToSave = Environment.GetFolderPath(Environment.SpecialFolders.MyDocuments);
pathToSave = Path.Combine(pathToSave, "PERFEC1.1", "PDF");
Directory.CreateDirectory(pathToSave);
string fileToSave = Path.Combine(pathToSave, "RedactionCV.pdf");
... code to save the file ....

现在,当您需要检索文档时,很容易重建不同用户的计算机上存在的路径

string pathToLoad = Path.Combine(pathToSave, "PERFEC1.1", "PDF");
string fileToLoad = Path.Combine(pathToLoad, "RedactionCV.pdf");
... code to load file ....

这种方法的关键是使用Environment.SpecialFolder枚举,它有助于检索最终用户计算机上众所周知的位置,而不是在应用程序中存储硬路径

答案 1 :(得分:0)

相对路径指定为"subfolder1\\subfolder2\\file.pdf",如果您想要升级使用..."...\\curentfolder\\subfolder1\\subfolder2\\file.pdf"(这没有意义,但您可以使用其他文件夹而不是curentfolder)。因此,在您的情况下,它应该是"PDF\\RedactionCV.pdf"。您可以使用相对路径进行读取和写入,就像使用绝对路径一样。如果您要创建新文件,请确保该路径已存在,因为它不会为您创建新文件夹(您可以使用DirectoryInfo)。