Java 9:控制台和PrintStream问题

时间:2018-02-20 10:20:50

标签: java javafx console printstream

我正在尝试获取控制台的内容并将其附加到JavaFX TextArea 我在StackOverflow周围找到了各种各样的例子,但它们都使用了类似的代码:

@FXML
public void initialize() throws IOException {
    Console console = new Console();
    PrintStream ps = new PrintStream(console, true);
    System.setOut(ps);
    System.setErr(ps);
    System.err.flush();
    System.out.flush();
}

问题是Java 9中似乎不再接受前两行。对于第一行,我已经解决了我的问题:

Console console = new Console();

...变为

Console console = System.console();

但是,PrintStream构造函数不再接受java.io.Console对象作为输入,而只是...

  

错误:(124,26)java:找不到适合PrintStream的构造函数(java.io.Console,boolean)       构造函数java.io.PrintStream.PrintStream(boolean,java.io.OutputStream)不适用         (参数不匹配; java.io.Console无法转换为boolean)       构造函数java.io.PrintStream.PrintStream(java.io.OutputStream,boolean)不适用         (参数不匹配; java.io.Console无法转换为java.io.OutputStream)       构造函数java.io.PrintStream.PrintStream(java.lang.String,java.lang.String)不适用         (参数不匹配; java.io.Console无法转换为java.lang.String)       构造函数java.io.PrintStream.PrintStream(java.io.File,java.lang.String)不适用         (参数不匹配; java.io.Console无法转换为java.io.File)

我错过了什么吗? 作为参考,我使用了this question

0 个答案:

没有答案