gpt4 book ai didi

java - 构造函数 PlainTextByLineStream(StringReader) 未定义

转载 作者:行者123 更新时间:2023-12-02 11:10:05 27 4
gpt4 key购买 nike

知道为什么会发生这种情况,我使用的是 java 版本 10.0.1

public void POSTag() throws IOException {
POSModel model = new POSModelLoader().load(new File("lib/en-pos-maxent.bin"));
PerformanceMonitor perfMon = new PerformanceMonitor(System.err, "sent");
POSTaggerME tagger = new POSTaggerME(model);
String input = "Hi. How are you? This is Mike.";
ObjectStream<String> lineStream = new PlainTextByLineStream(new StringReader(input));
perfMon.start();
String line;
while ((line = lineStream.read()) != null) {

String whitespaceTokenizerLine[] = WhitespaceTokenizer.INSTANCE
.tokenize(line);
String[] tags = tagger.tag(whitespaceTokenizerLine);

POSSample sample = new POSSample(whitespaceTokenizerLine, tags);
System.out.println(sample.toString());

perfMon.incrementCounter();
}
perfMon.stopAndPrintFinalResult();
}

编译上述程序时出现错误就像这样

The constructor PlainTextByLineStream(StringReader) is undefined.

该消息的原因是什么以及如何解决?

最佳答案

根据该类的官方 OpenNLP JavaDoc PlainTextByLineStream存在两个构造函数。

  1. PlainTextByLineStream(InputStreamFactory inputStreamFactory, Charset 字符集)
  2. PlainTextByLineStream(InputStreamFactory inputStreamFactory, String charsetName)

可以看出,没有构造函数,例如PlainTextByLineStream(StringReader reader)

但是,在您的代码中,您可以使用现有的构造函数之一,如下所示:

// ...
Charset charset = Charset.forName("UTF-8");
InputStreamFactory isf = new MarkableFileInputStreamFactory(new File("myText.txt"));
ObjectStream<String> lineStream = new PlainTextByLineStream(isf, charset);
// ...
while ((line = lineStream.read()) != null) {
// process
}

请注意,您必须提供对提供文本内容的文件(此处:“mytext.txt”)的引用。

希望有帮助。

关于java - 构造函数 PlainTextByLineStream(StringReader) 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50668754/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com