过滤包含给定关键字的PDF文件

问题描述 投票:0回答:1

我正在尝试制作一个listBox,该文件将显示包含textBox中给定关键字的PDF文件。我正在使用iTextSharp7。所有文件都作为完整路径字符串加载到listBox中。这是我到目前为止所做的:

查找给定关键字的功能:

private int ReadPdfFile(string fileName, String searthText)
{
    int indicator = 0; 

    if (File.Exists(fileName))
    {
        PdfReader pdfReader = new PdfReader(fileName);
        PdfDocument pdfDocument = new PdfDocument(pdfReader);
        {
            for (int page = 1; page <= pdfDocument.GetNumberOfPages(); page++)
            {
                ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();

                string currentPageText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(page), strategy);

                if (currentPageText.Contains(searthText))
                {
                    indicator++;
                }
            }
        }
    }
    return indicator;
}

textBox代码:

private void textBox1_TextChanged(object sender, EventArgs e)
{
    listBox2.Items.Clear();

    for (int i = 0; i < items.Count; i++)
    {
        if (ReadPdfFile(items[i].ToString(), textBox1.Text)>0)
        {
            listBox2.Items.Add(items[i]);
        }
    }          
}

但是当我尝试在文本框中键入任何内容时,会在PdfDocument pdfDocument = new PdfDocument(pdfReader);处收到以下异常:>

System.IO.FileNotFoundException:'无法加载文件或程序集'Common.Logging,版本= 3.4.1.0,文化=中性,PublicKeyToken = af08829b84f0328e”或其依赖项之一。的系统找不到指定的文件。'

有什么建议吗?我什至朝着正确的方向前进吗?

我正在尝试创建一个列表框,该列表框将显示在textBox中包含给定关键字的PDF文件。我正在使用iTextSharp7。所有文件都作为完整路径字符串加载到listBox中。这就是我所做的...

c# winforms pdf itext
1个回答
0
投票

您需要检查Common.Logging.dll文件是否在项目的bin目录中。否则

© www.soinside.com 2019 - 2024. All rights reserved.