ApacheTika能够提取汉语、日语等外语吗?

ApacheTika能够提取汉语、日语等外语吗?,apache,apache-tika,Apache,Apache Tika,ApacheTika能够提取汉语、日语等外语吗 我有以下代码: Detector detector = new DefaultDetector(); Parser parser = new AutoDetectParser(detector); InputStream stream = new ByteArrayInputStream(bytes); OutputStream outputstream = new ByteArrayOutputStream();

ApacheTika能够提取汉语、日语等外语吗

我有以下代码:

    Detector detector = new DefaultDetector();
    Parser parser = new AutoDetectParser(detector);
    InputStream stream = new ByteArrayInputStream(bytes);
    OutputStream outputstream = new ByteArrayOutputStream();
    ContentHandler textHandler = new BodyContentHandler(outputstream);
    Metadata metadata = new Metadata();
    // Set<String> langs = LanguageIdentifier.getSupportedLanguages();
    // metadata.set(Metadata.CONTENT_LANGUAGE, lang);
    // metadata.set(Metadata.FORMAT, hint);
    ParseContext context = new ParseContext();
    try {
        parser.parse(stream, textHandler, metadata, context);
        String extractedText = outputstream.toString();
        return extractedText;
    } catch (IOException e) {
        e.printStackTrace();
    } catch (SAXException e) {
        e.printStackTrace();
    } catch (TikaException e) {
        e.printStackTrace();
    }
检测器检测器=新的DefaultDetector();
解析器=新的自动检测解析器(检测器);
InputStream=新的ByteArrayInputStream(字节);
OutputStream OutputStream=新建ByteArrayOutputStream();
ContentHandler textHandler=新的BodyContentHandler(outputstream);
元数据=新元数据();
//Set langs=LanguageIdentifier.getSupportedLanguages();
//metadata.set(metadata.CONTENT\u语言,lang);
//metadata.set(metadata.FORMAT,hint);
ParseContext=新的ParseContext();
试一试{
parse(流、textHandler、元数据、上下文);
String extractedText=outputstream.toString();
返回提取的文本;
}捕获(IOE异常){
e、 printStackTrace();
}捕获(SAXE异常){
e、 printStackTrace();
}渔获物(Tikae){
e、 printStackTrace();
}
如果输入是包含汉字的文档文件,则每个汉字将被提取为“?”


非常感谢

我在任何地方都没有看到写过Apache Tika不支持汉语和日语等外语的文章。但是当查看下面的apachetika源文件时,我找不到这两种语言

但是,您仍然可以按照《五分钟用户指南》中讨论的方法尝试实现,以使用您的中文文档文件进行测试


Apache Tika能够从其支持的文件格式中提取unicode文本。只要文件格式可以存储unicode文本(如中文或日文字符),ApacheTika就可以提取它

Tika还包含了许多用于验证其工作原理的单元测试。一个这样的测试使用。如果使用命令行Tika应用程序并抓取前几行,我们会看到它正在工作:

$ java -jar tika-app-1.4.jar --text testMSG_chinese.msg | head
Alfresco MSG format testing ( MSG 格式測試 )
    From
    Tests Chang@FT (張毓倫)
    To
    Tests Chang@FT (張毓倫)
    Recipients
    tests.chang@fengttt.com
或者用这个:


您只需要确保生成的任何文本输出都以适当的编码(例如utf8)存储,并且用于显示它的字体支持这些字形

蒂卡应该能处理得很好。您确定在输出/查看文本时编码正确吗?(提示-它很可能需要类似UTF-8的字体,您需要使用带有汉字字形的字体来显示!)您所引用的代码是用于语言检测,而不是用于文本提取,这与Tika不同
$ java -jar tika-app-1.4.jar --text testRTFJapanese.rtf | head -2
ゾルゲの処刑記録、
ゾルゲと尾崎、淡々と最期