マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

よし、再開

全然やらずに止まってたけど再開した。ByteBufferが大活躍中だけど、速度はどうなんだろう?getFloatとかgetIntなどがデフォルトでビッグエンディアンなのでリトルエンディアンにする必要があるけど、バイナリファイルをFileChannelを使ってByteBufferまで持っていって、floatなどを取得できるのはでかい。以下のように取得したけど、これだとFileInputStream閉じられなさそうだけどChannel閉じればいいのだろうか?ちょっと調べてみる

FileChannel channel = new FileInputStream(pmd).getChannel();
ByteBuffer buffer = ByteBuffer.allocate((int)channel.size());
channel.read(buffer);
channel.close();