获取合并的pdf但已损坏的文件,我无法使用以下代码打开。 ' targetPDF'是最终合并的pdf文件和' fileNames'拥有所有单个pdf。请帮忙。提前谢谢。
Using (FileStream stream = new FileStream(targetPDF, FileMode.Create, FileAccess.Write))
{
Document document = new Document();
PdfCopy pdf = new PdfCopy(document, stream);
if (pdf == null)
{
return;
}
document.Open();
foreach (string file in fileNames)
{
PdfReader reader = new PdfReader(file);
reader.ConsolidateNamedDestinations();
for (int i = 1; i <= reader.NumberOfPages; i++)
{
PdfImportedPage page = pdf.GetImportedPage(reader, i);
pdf.AddPage(page);
//pdf.AddDocument(new PdfReader(file));
// pdf.AddPage(pdf.GetImportedPage(reader, 1));
}
reader.Close();
}
}
答案 0 :(得分:3)
更改此行
Document document = new Document();
PdfCopy pdf = new PdfCopy(document, stream);
致:
using(Document document = new Document())
{
using(PdfCopy pdf = new PdfCopy(document, stream))
{
//do staff here...
}
}
因此,在完成工作后,所有流都关闭,文件未被锁定。