在读取一个PDF时提示:

System.NullReferenceException: Object reference not set to an instance of an object.
at org.pdfbox.pdmodel.PDPageNode.getAllKids(List , COSDictionary , Boolean )
at org.pdfbox.pdmodel.PDPageNode.getAllKids(List result)
at org.pdfbox.pdmodel.PDDocumentCatalog.getAllPages()
at org.pdfbox.util.PDFTextStripper.writeText(PDDocument doc, Writer outputStream)
at org.pdfbox.util.PDFTextStripper.getText(PDDocument doc)

 

就尝试着换了个pdf,结果没有问题,再跟踪这个问题,发现最后停止:

org.pdfbox.pdmodel.PDPageNode.getCount()

org.pdfbox.pdmodel.PDDocument.getNumberOfPages()

org.pdfbox.pdmodel.PDDocument.getPageCount()

就是说不能获取pdf的页数.

 

问题原因及解决办法

几经着周折,发现当pdf排版不一致会出现这个错误.

接着,继续逛各大论坛,发现很多,朋友都有这个问题,但是,这个问题一直没有得到很好的解决办法.

过了N久,在国外论坛中找到itextsharp-all-5.2.1的版本.呵呵,问题得到了解决.