Проверка файлов Adobe PDF Программно, в идеале через C # - PullRequest
0 голосов
/ 03 сентября 2011

У меня много PDF-файлов, которые копируются с одного сервера на другой.Из-за проблем с подключением некоторые из них будут повреждены без предупреждения об ошибке.Тем не менее, он говорит, что файл не читается при открытии в Acrobat Reader.Я хочу выяснить, есть ли API, который я могу проверить, является ли это действительный файл PDF для открытия, в идеале в C #

Интересно, может ли помочь ExpertPDF, который содержит API.

ExpertPDF HtmlToPdf Converter

Спасибо!

Ответы [ 2 ]

0 голосов
/ 07 сентября 2011

Вы можете установить VERIFY на ON перед запуском xcopy или robocopy, чтобы обеспечить целостность файла.

В противном случае вы можете запустить утилиту командной строки, такую ​​как PDFLEO , чтобы сбросить метаданные. Если он сообщает об ошибке, файл, вероятно, поврежден.

0 голосов
/ 07 сентября 2011

Если вы хотите проверить, является ли PDF действительным, я бы посмотрел на iTextSharp .Вы можете попробовать открыть файл, используя PdfReader (любая перегрузка, кроме той, которая принимает RandomAccessFileOrArray, которая, я не думаю, сразу анализирует весь файл).

PdfReader r = new PdfReader("c:\\File.pdf");

Но у вас есть контроль надэтот процесс передачи с сервера на сервер?Файлы не должны быть повреждены в первую очередь.Может быть, у вас проблема с FTP ASCII / BINARY?Изменяется ли размер файла?Можете ли вы выполнить контрольную сумму до и после, даже что-нибудь простое, например, MD5?Исправьте проблему, а не убирайте ее, когда она сломается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...