浏览并保存pdf文件C#winform

时间:2013-08-25 11:48:33

标签: c# winforms pdf file-upload save

我想浏览pdf文件并将它们存储在另一个文件夹中。我已经实现了pdf文件浏览部分。我可以获得所有的pdf文件路径。现在我想将它们保存在另一个文件夹中。 有没有办法做到这一点?

    //Keep pdf file locations
    List<string> pdfFiles = new List<string>();

    // Browse pdf and get their paths
    private void btnPdfBrowser_Click(object sender, EventArgs e)
    {
        OpenFileDialog openFileDialog = new OpenFileDialog();
        openFileDialog.CheckFileExists = true;
        openFileDialog.AddExtension = true;
        openFileDialog.Multiselect = true;
        openFileDialog.Filter = "PDF files (*.pdf)|*.pdf";

        if (openFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
        {
            foreach (string fileName in openFileDialog.FileNames)
            {
                pdfFiles.Add(fileName);
            }
        }
    }

    private void btnUploadFile_Click(object sender, EventArgs e)
    {
        string installedPath = Application.StartupPath + "pdf";

        //Check whether folder path is exist
        if (!System.IO.Directory.Exists(installedPath))
        {
            // If not create new folder
            System.IO.Directory.CreateDirectory(installedPath);
        }
        //Save pdf files in installedPath ??
    }

2 个答案:

答案 0 :(得分:4)

怎么样

File.Copy(sourcePath, destinationPath);

以下是完整的代码段

//Keep pdf file locations
List<string> pdfFiles = new List<string>();

// Browse pdf and get their paths
private void btnPdfBrowser_Click(object sender, EventArgs e)
{
    OpenFileDialog openFileDialog = new OpenFileDialog();
    openFileDialog.CheckFileExists = true;
    openFileDialog.AddExtension = true;
    openFileDialog.Multiselect = true;
    openFileDialog.Filter = "PDF files (*.pdf)|*.pdf";

    if (openFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
    {
        pdfFiles = new List<string>();  
        foreach (string fileName in openFileDialog.FileNames)
            pdfFiles.Add(fileName);
    }
}

private void btnUploadFile_Click(object sender, EventArgs e)
{
    string installedPath = Application.StartupPath + "pdf";

    //Check whether folder path is exist
    if (!System.IO.Directory.Exists(installedPath))
    {
        // If not create new folder
        System.IO.Directory.CreateDirectory(installedPath);
    }
    //Save pdf files in installedPath
    foreach (string sourceFileName in pdfFiles) 
    {
        string destinationFileName = System.IO.Path.Combine(installedPath, IO.Path.GetFileName(sourceFileName));
        System.IO.File.Copy(sourceFileName, destinationFileName);
    }
}

答案 1 :(得分:1)

当您循环浏览所有pdf或者想要移动它们时,可以使用File.Copy方法File.Move