System.in で NIO を使用することは可能ですか?
どうにかして「stdin」を選択可能なチャネルとして扱いたいと思います。誰かがこれを行う方法を見つけましたか?
についてはわかりませんが、をでSelectableChannel
変換できますInputStream
ReadableByteChannel
using java.nio.channels.Channels;
...
ReadableByteChannel in = Channels.newChannel(System.in);
Pipe
標準入力から読み取り、パイプに書き込むカスタム スレッドを作成できます。
を取得したらPipe
、入力チャネルを取得できます。
複製:
InputStream から SelectableChannel を取得するには?
うーん...考え直してみると、標準入力には解決策があるかもしれません。私はこの参照を見つけました:
http://www.javafaq.nu/java-example-code-346.html
特に:
SystemInPipe.java (標準入力を選択可能なチャネルとしてカプセル化するクラス)