私は、私のためにオーディオファイルをダウンロードするJavaプログラムを作成しました。私はBufferedInputStreamを使用しています。 read()関数は正常に動作しますが、実際には遅いので、オーバーロードされたバージョンをbyte []を使って試してみました。BufferedInputStream.read(byte [])問題を引き起こします。誰もがこの問題を以前に持っていますか?
何らかの理由で、ダウンロード後に音声が壊れて奇妙になります。私は何が間違っているのか完全にはわからないので、どんな助けもありがたいです!ここでは単純化した、コードのちょっとしたバージョンです。
BufferedInputStream bin = new BufferedInputStream((new URL(url)).openConnection().getInputStream());
File file = new File(fileName);
FileOutputStream fop = new FileOutputStream(file);
int rd = bin.read();
while(rd != -1)
{
fop.write(rd);
rd = bin.read();
}
ああ私は...間違ったミスです!私にそれを指摘してくれてありがとう! :D –
それは私たちの最高に起こる!私はこれが私に2回以上起きたことがありました。通常は画像ファイルが付いているので、コピーされた画像に変なアーティファクトが現れます。最大の症状は、私のファイルサイズがすべて1024の倍数だったということでした。 – Zeki