除き、そうでなければ、試してみてください。Scalaは、私がこのようなコードを持っているブロック
val extractInfo: (Array[Byte] => String) = (fp: Array[Byte]) => {
val parser:Parser = new AutoDetectParser()
val handler:BodyContentHandler = new BodyContentHandler(Integer.MAX_VALUE)
val config:TesseractOCRConfig = new TesseractOCRConfig()
val pdfConfig:PDFParserConfig = new PDFParserConfig()
val inputstream:InputStream = new ByteArrayInputStream(fp)
val metadata:Metadata = new Metadata()
val parseContext:ParseContext = new ParseContext()
parseContext.set(classOf[TesseractOCRConfig], config)
parseContext.set(classOf[PDFParserConfig], pdfConfig)
parseContext.set(classOf[Parser], parser)
parser.parse(inputstream, handler, metadata, parseContext)
handler.toString
}
アパッチティカを使用してPDFファイルからテキストを解析関数リテラル。
ここで私が望むのは、parser.parseで実行され、実行できない場合は空の文字列を返すTryブロックです。私はScalaでこの種のロジックを構築する方法がわかりません。
これはまさに私が探していたものです。ありがとう。 – tadamhicks