NIO と NIO.2 の例

次に挙げる例は、NIO API の使用法を示しています。
ソースファイル 説明
Grep.java ファイルリストから、指定された正規表現パターンにマッチする行を検索する。NIO マップバイトバッファー、文字セット、および正規表現を例示する。
Sum.java ファイルリストの 16 ビットのチェックサムを計算する。高速化のため、NIO マップバイトバッファーを使用する。
TimeQuery.java ホストのリストに時間を照会する。NIO ソケットチャネル (接続と読み取り)、バッファーの取り扱い、文字セット、および正規表現を例示する、簡単なブロックプログラム。
TimeServer.java 接続を待機し、呼び出し側に時間を返す。NIO ソケットチャネル (受け入れと書き込み)、バッファーの取り扱い、文字セット、および正規表現を例示する、簡単なブロックプログラム。
Ping.java ホストの各リストに接続して、接続を完了するのに要する時間を計測する。セレクタと 2 つの付加的なスレッドを使用して、非ブロック接続と、セレクタのマルチスレッド化した使用を例示する。
NBTimeServer.java 非ブロックのインターネット時間サーバーを実装する。

次の表に示す NIO.2 の例は、JDK 7 インストールの <JAVA_HOME>/sample/nio からアクセスできます。

ソースファイル 説明
file/Chmod.java chmod(1) ユーティリティーと同様の方法でファイルのアクセス権を変更します。
file/Copy.java cp(1) ユーティリティーと同様の方法でファイルをコピーします。
file/DiskUsage.java df(1M) と同様の方法でディスク領域の情報を出力します。
file/FileType.java ファイルのタイプを出力します。
file/WatchDir.java ディレクトリ (またはツリー) 内のファイルの変更を監視します。
file/Xdd.java ファイルのユーザー定義属性を一覧表示、取得、および削除します。
multicast/MulticastAdress.java マルチキャストアドレスを解析および表現します。
multicast/Reader.java マルチキャストデータグラムからメッセージを読み取ります。
multicast/Sender.java 特定のグループにマルチキャストデータグラムでメッセージを送信します。
server/README.txt このディレクトリには、簡単な NIO ベースの HTTP/HTTPS サーバーの例が含まれています。詳細は、README.txt ファイルを参照してください。

Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.