可能ですか?基本的に私は、によって表されるローカルバイナリファイルがあります:私はByteBuffer
Sを使用してこのファイルを読みたいファイル(file:/// path/to/file)を含むjava.net.URLからjava.nio.FileChannelへ
file:///path/to/myfile.dat
を、他の言葉で、私はそれを行うために指定されたURLからFileChannel
が必要と考えています。
希望ですか?
可能ですか?基本的に私は、によって表されるローカルバイナリファイルがあります:私はByteBuffer
Sを使用してこのファイルを読みたいファイル(file:/// path/to/file)を含むjava.net.URLからjava.nio.FileChannelへ
file:///path/to/myfile.dat
を、他の言葉で、私はそれを行うために指定されたURLからFileChannel
が必要と考えています。
希望ですか?
はい、URLからパスを取得し、FileChannel.open()
で開きます。
URL.getPath()またはURL.getfile()を呼び出すと、有効なファイル名が返されません。すべてのパーセントをエスケープして、URLのパス部分を返します。 URLは 'Paths.get(url.toURI())'でPathに変換する必要があります。 – VGR
@ JohnD URLです。それはスキームとスキーム依存の部分を持っています。 – EJP
@JohnDブラウザで試したところ、ローカルファイルを開くことができます。正しいURLには2(私の悪い)=> 'file:/// path/to/mylocalfile.dat'の代わりに3 '/'があります(Obs:3の代わりに2つの '/'が間違っていたオリジナルURLを修正しました) – LatencyFighter