Как вставить каталог с файлами - PullRequest
0 голосов
/ 13 февраля 2019

Я сделал программу с iTextSharp, которая позволяет пользователю нажимать на кнопку, чтобы выбрать файл и выполнить основную функцию со второй кнопкой.Теперь я хочу сделать кнопку, которая заменит эту функцию во второй кнопке:

using (Stream dest = File.Create(@"L:\Users\user\Documents\PDFnummerieren\PDF.pdf"))

Я хочу сделать третью кнопку, которая получит выбранное местоположение пользователем, а не данное местоположение, которое не являетсяизменяемый.

Весь код:

    private void button1_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(theFile) || !File.Exists(theFile))
            return;
        byte[] bytes = File.ReadAllBytes(theFile);
        iTextSharp.text.Font blackFont = FontFactory.GetFont("Arial", 12,
 iTextSharp.text.Font.NORMAL, BaseColor.BLACK);
        using (Stream source = File.OpenRead(theFile))
        using (Stream dest = File.Create(theCFile))
        {
            PdfReader reader = new PdfReader(source);
            using (PdfStamper stamper = new PdfStamper(reader, dest))
            {
                int pages = reader.NumberOfPages;
                for (int i = 1; i <= pages; i++)
                {
                    ColumnText.ShowTextAligned(stamper.GetOverContent(i), Element.ALIGN_RIGHT,
                        new Phrase(i.ToString(), blackFont), 568f, 15f, 0);
                }
            }
        }
    }

         private void button3_Click(object sender, EventArgs e)
    {
        var FD = new System.Windows.Forms.OpenFileDialog();
        if (FD.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            theFile = FD.FileName;
    }
    private void button12_Click(object sender, EventArgs e)
    {
        var FD = new System.Windows.Forms.FolderBrowserDialog();
        if (FD.ShowDialog() == System.Windows.Forms.DialogResult.OK) ;

    }

1 Ответ

0 голосов
/ 13 февраля 2019

Используйте класс FolderBrowserDialog для выбора местоположения папки.

Вы можете объединить выходную папку и имя файла с помощью Path.Combine(selectedFolder, filename) и поместить его в оператор using.

Код для сохранения выбранной выходной папки:

private void button12_Click(object sender, EventArgs e)
{
    var FD = new System.Windows.Forms.FolderBrowserDialog();
    if (FD.ShowDialog() == System.Windows.Forms.DialogResult.OK)
    {
        string selectedPath = FD.SelectedPath;
        theCFile = Path.Combine(selectedPath, theFile)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...