Я использую PDFBox для проекта C # .NET. и я получаю «TypeInitializationException» (инициализатор типа для «java.lang.Throwable» вызвал исключение.) при выполнении следующего блока кода:
FileStream stream = new FileStream(@"C:\1.pdf",FileMode.Open);
//retrieve the pdf bytes from the stream.
byte[] pdfbytes=new byte[65000];
stream.Read(pdfbytes, 0, 65000);
//get the pdf file bytes.
allbytes = pdfbytes;
//create a stream from the file bytes.
java.io.InputStream ins = new java.io.ByteArrayInputStream(allbytes);
string txt;
//load the doc
PDDocument doc = PDDocument.load(ins);
PDFTextStripper stripper = new PDFTextStripper();
//retrieve the pdf doc's text
txt = stripper.getText(doc);
doc.close();
исключение возникает при 3-м операторе:
PDDocument doc = PDDocument.load(ins);
Что я могу сделать, чтобы решить эту проблему?
Это трассировка стека:
at java.lang.Throwable.__<map>(Exception , Boolean )
at org.pdfbox.pdfparser.PDFParser.parse()
at org.pdfbox.pdmodel.PDDocument.load(InputStream input, RandomAccess scratchFile)
at org.pdfbox.pdmodel.PDDocument.load(InputStream input)
at At.At.ExtractTextFromPDF(InputStream fileStream) in
C:\Users\Administrator\Documents\Visual Studio 2008\Projects\AtProject\Att\At.cs:line 61
Внутреннее исключение InnerException:
- InnerException {"Не удалось загрузить файл или сборку" IKVM.Runtime, Версия = 0.30.0.0, Культура = нейтральная, PublicKeyToken = 13235d27fcbfff58 'или одна из ее зависимостей. Система не может найти указанный файл. ":" IKVM. Время выполнения, версия = 0.30.0.0, культура = нейтральная, PublicKeyToken = 13235d27fcbfff58 "} System.Exception {System.IO.FileNotFoundException}
ОК, я решил предыдущую проблему, скопировав некоторые DLL-файлы PDFBox в папку bin. но теперь я получаю эту ошибку: ожидается = '/' actual = '.'-- 1 org.pdfbox.io.PushBackInputStream@283d742
Есть ли альтернативы использованию PDFBox? Есть ли какая-либо другая надежная библиотека, которую я могу использовать для извлечения текста из файлов PDF.