如何在.Net Core 上使用 Apache Tika?

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

我需要使用 .Net Core 并创建一个使用 Apache Tika 的 .NET 绑定的控制台应用程序。你们知道如何继续吗?

我找到了一个名为“TikaOnDotNet”的包装器,但它似乎只适用于 .Net Framework,而不适用于 .Net Core。有办法让这个工作吗?感谢您提前回复。

.net .net-core apache-tika
2个回答
4
投票

不幸的是,.NET Core 框架没有 100% 覆盖其他 .NET Framework 类型,因此它本身不兼容。它必须在某种程度上被重写才能工作。幸运的是它是开源的:)


0
投票

您可以使用 IKVM.Maven.SDK https://github.com/ikvmnet/ikvm-maven。我最近在工作中遇到了这个问题。这适用于 .NET 8。

<ItemGroup>
  <PackageReference Include="IKVM.Maven.Sdk" Version="1.6.9" />
</ItemGroup>

    <ItemGroup>
<MavenReference Include="org.apache.tika:tika-core" Version="2.9.2"></MavenReference>
<MavenReference Include="org.apache.tika:tika-parsers-standard-package" Version="2.9.0"></MavenReference>
    </ItemGroup>
using org.apache.tika.parser;
using ikvm.io;
using org.apache.tika.sax;
using org.apache.tika.metadata;

using FileStream fs = new FileStream("some-file-name-here.pdf", FileMode.Open);
using InputStreamWrapper stream = new InputStreamWrapper(fs);
BodyContentHandler handler = new BodyContentHandler();
Parser parser = new org.apache.tika.parser.pdf.PDFParser();

Metadata metdata = new Metadata();
ParseContext parseContext = new ParseContext();
parser.parse(stream, handler, metdata, parseContext);
Console.WriteLine(handler.toString());
© www.soinside.com 2019 - 2024. All rights reserved.