Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我用的是“;。“净核心”。我想搜索pdf文件中的任何关键字,但此代码不起作用_C#_.net_Pdf_.net Core - Fatal编程技术网

C# 我用的是“;。“净核心”。我想搜索pdf文件中的任何关键字,但此代码不起作用

C# 我用的是“;。“净核心”。我想搜索pdf文件中的任何关键字,但此代码不起作用,c#,.net,pdf,.net-core,C#,.net,Pdf,.net Core,您可以尝试以下方法: static void Main(string[] args) { var file = File.Open(Directory.GetCurrentDirectory() + "/Net.pdf", FileMode.Open); var pattern = new Regex("kullan", RegexOptions.IgnoreCase); //this line is not working TextExtractor text

您可以尝试以下方法:

static void Main(string[] args) {
    var file = File.Open(Directory.GetCurrentDirectory() + "/Net.pdf", FileMode.Open);
    var pattern = new Regex("kullan", RegexOptions.IgnoreCase);

    //this line is not working
    TextExtractor textExtractor = new TextExtractor();

    var dddd = ReadToEnd(file);
    var textStrings = textExtractor.Extract(dddd);
    var matches = pattern.Matches(textStrings.Text);

    foreach (var item in matches)
    {
        Console.WriteLine(item);
    }
}
蒂卡:


我就是这样做的,谢谢你的回答

try
{

    var result = new TextExtractor().Extract(yourPDF.pdf).Text;

    Console.WriteLine(result.Text.Length);

    foreach(var line in result)
    {
        if(line.contains("kullen"))
            /** Do Something **/
    }
}
catch(Exception e)
{
    Console.WriteLine("Error occurred: " + e);
}
namespace-pro
{
班级计划
{
静态void Main(字符串[]参数)
{
字符串b=pdfText(Directory.GetCurrentDirectory()+“/Net.pdf”);
字符串a=“kullan”;
int sonuc;
sonuc=b.IndexOf(a,0,b.长度);
如果(sonuc==-1)
{
控制台。写入线(“未找到”);
}
其他的
{
Console.WriteLine(“从“+sonuc.ToString()+”.character中找到”);
} 
}
公共静态字符串pdfText(字符串路径)
{
PdfReader reader=新PdfReader(路径);
var dd=reader.GetPageContent(1);
string text=string.Empty;

对于(int page=1;page错误的详细信息是什么?我使用TikaOnDotnet.TextExtractor 1.17.1。此版本没有true,true参数Sokay,true,true用于PDF。我刚刚在TikaOnDotnet上尝试了此操作,它对我有效。您收到了什么错误?“消息”:“'string'不包含'ShouldContain'的定义,并且找不到可访问的扩展方法'ShouldContain'接受'string'类型的第一个参数(是否缺少using指令或程序集引用?[pdfProject]”,“source”:“csharp”“,请查看我的更新答案。这是旧版本。好的,我使用新版本,但出现错误->“FileStream”不包含“Document”的定义,并且找不到接受“FileStream”类型的第一个参数的可访问扩展方法“Document”(是否缺少using指令或程序集引用?[pdfProject]您已切换到另一个PDFExtractor。这不是您所要求的。如果我的答案对您有帮助,请将其标记为解决方案。谢谢。
try
{

    var result = new TextExtractor().Extract(yourPDF.pdf).Text;

    Console.WriteLine(result.Text.Length);

    foreach(var line in result)
    {
        if(line.contains("kullen"))
            /** Do Something **/
    }
}
catch(Exception e)
{
    Console.WriteLine("Error occurred: " + e);
}
namespace pro
{
    class Program
    {
        static void Main(string[] args)
        {

            string b = pdfText(Directory.GetCurrentDirectory()+ "/Net.pdf");

            string a= "kullan";
            int sonuc;
            sonuc = b.IndexOf(a,0, b.Length);
            if(sonuc==-1)
            {
                Console.WriteLine("not found");
            }
            else
            {
                Console.WriteLine("found from " + sonuc.ToString() + ". character");
            } 

        }

        public static string pdfText(string path)
        {
            PdfReader reader = new PdfReader(path);
            var dd = reader.GetPageContent(1);
            string text = string.Empty;
            for (int page = 1; page <= reader.NumberOfPages; page++)
            {
                System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
                text += PdfTextExtractor.GetTextFromPage(reader, page);

            }
            reader.Close();
            return text;
        }
    }
}