C# PDFTextractor中的iTextSharp错误?

C# PDFTextractor中的iTextSharp错误?,c#,pdf,pdf-generation,itextsharp,C#,Pdf,Pdf Generation,Itextsharp,我刚刚开始尝试使用iTextSharp处理PDF文档。作为一个简单的练习,我尝试使用下面的代码从一个简单的PDF中提取文本 protected void btnUpload_Click(object sender, EventArgs e) { if (fuPDFUpload.HasFile) { PdfReader reader = new PdfReader(fuPDFUpload.FileByt

我刚刚开始尝试使用iTextSharp处理PDF文档。作为一个简单的练习,我尝试使用下面的代码从一个简单的PDF中提取文本

protected void btnUpload_Click(object sender, EventArgs e)
        {
            if (fuPDFUpload.HasFile)
            {
                PdfReader reader = new PdfReader(fuPDFUpload.FileBytes);
                for (int i = 0; i < reader.NumberOfPages; i++)
                {
                    lblPdfText.Text += PdfTextExtractor.GetTextFromPage(reader, i);    
                }

            }
        }
protectedvoidbtnupload\u单击(对象发送方,事件参数e)
{
if(fuPDFUpload.HasFile)
{
PdfReader reader=新的PdfReader(fuPDFUpload.FileBytes);
对于(int i=0;i

上面的代码抛出了一个null引用异常,reader不为null,而i作为int显然不为null,如果reader为null,那么我将期待ArgumentNullException。读者拥有页面,因此它进入循环。我只能认为这是某种错误。它是开源的,所以我可以尝试修复它,但我真的没有时间。有人知道这里可能发生了什么,或者我可能会如何处理它吗?

好的,所以PDF没有第0页,下面的代码可以正常工作:

protected void btnUpload_Click(object sender, EventArgs e)
        {
            if (fuPDFUpload.HasFile)
            {
                PdfReader reader = new PdfReader(fuPDFUpload.FileBytes);
                for (int i = 1; i <= reader.NumberOfPages; i++)
                {
                    lblPdfText.Text += PdfTextExtractor.GetTextFromPage(reader, i);    
                }

            }
        }
protectedvoidbtnupload\u单击(对象发送方,事件参数e)
{
if(fuPDFUpload.HasFile)
{
PdfReader reader=新的PdfReader(fuPDFUpload.FileBytes);

对于(int i=1;iOK,因此PDF没有第0页,下面的代码可以正常工作:

protected void btnUpload_Click(object sender, EventArgs e)
        {
            if (fuPDFUpload.HasFile)
            {
                PdfReader reader = new PdfReader(fuPDFUpload.FileBytes);
                for (int i = 1; i <= reader.NumberOfPages; i++)
                {
                    lblPdfText.Text += PdfTextExtractor.GetTextFromPage(reader, i);    
                }

            }
        }
protectedvoidbtnupload\u单击(对象发送方,事件参数e)
{
if(fuPDFUpload.HasFile)
{
PdfReader reader=新的PdfReader(fuPDFUpload.FileBytes);

对于(int i=1;i未来:始终发布堆栈跟踪。请漂亮。在顶部放糖。未来:始终发布堆栈跟踪。请漂亮。在顶部放糖。