代码之家  ›  专栏  ›  技术社区  ›  Justin

Java:使用系统中的NiO

  •  5
  • Justin  · 技术社区  · 15 年前

    这个问题已经有了答案:

    可以在system.in中使用nio吗?

    我想把“stdin”当作一个可选择的频道。有人找到办法了吗?

    3 回复  |  直到 9 年前
        1
  •  1
  •   Community CDub    7 年前

    复制品:

    How to get SelectableChannel from an InputStream?

    六羟甲基三聚氰胺六甲醚。。。仔细想想,对于stdin来说,也许有一个解决方案。我找到了这个参考:

    http://www.javafaq.nu/java-example-code-346.html

    尤其是:

    SystemInPipe.java (将stdin封装为可选择通道的类)

        2
  •  3
  •   Powerlord    15 年前

    我不知道 SelectableChannel ,但您可以将 InputStream 到A ReadableByteChannel 具有

    using java.nio.channels.Channels;
    
    ...
    
    ReadableByteChannel in = Channels.newChannel(System.in);
    
        3
  •  0
  •   Archie    9 年前

    你可以创建一个 Pipe 以及从标准输入读取并写入管道的自定义线程。

    一旦你有了 管子 然后你可以得到输入通道。