因此,我想出了转到目录的 C# 代码,搜索 PDF 文件名及其带有 _1 的免费 PDF 文件,并将它们合并到该目录中名为“合并”的文件夹中 using PdfSharp.Pdf; using PdfSharp.Pdf.IO; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp1 { class Program { //private const string dir = @"C:\Users\XBorja\Desktop\IMAGES\"; static void Main(string[] args) { Console.WriteLine("Please Enter Location"); var dir = Console.ReadLine(); File.SetAttributes(dir, FileAttributes.Normal); string[] files = Directory.GetFiles(dir, "*.pdf"); IEnumerable<IGrouping<string, string>> groups = files.GroupBy(n => n.Split('.')[0].Split('_')[0]); //string f = files[0].Split('_')[0]; foreach (var items in groups) { Console.WriteLine(items.Key); PdfDocument outputPDFDocument = new PdfDocument(); foreach (var pdfFile in items) { Merge(outputPDFDocument, pdfFile); } outputPDFDocument.Save(Path.GetDirectoryName(items.Key) + @"\Merge\" + Path.GetFileNameWithoutExtension(items.Key) + ".pdf"); } Console.ReadKey(); } private static void Merge(PdfDocument outputPDFDocument, string pdfFile) { PdfDocument inputPDFDocument = PdfReader.Open(pdfFile, PdfDocumentOpenMode.Import); outputPDFDocument.Version = inputPDFDocument.Version; foreach (PdfPage page in inputPDFDocument.Pages) { outputPDFDocument.AddPage(page); } } } }这很好用,但我更希望它不是硬编码,而是通过询问 PDF 所在的目录是要合并的目录来提示用户。然后,一旦这样做,就询问用户合并后的 pdf 将转到的新子文件夹将被命名为什么。我对 C# 还很陌生
1 回答
千万里不及你
TA贡献1784条经验 获得超9个赞
没有验证等,让用户提供信息很简单:
Console.WriteLine("Please enter location");
var location = Console.ReadLine();
- 1 回答
- 0 关注
- 161 浏览
添加回答
举报
0/150
提交
取消