以下は、Web から画像をダウンロードした後にファイルに書き込むコードです。しかし、どういうわけか、ファイル ストリームへの書き込み中にスタックします。例外はありません。ループ中はオンのままで、強制終了ポップアップが表示されます。10 分の 2 または 3 で発生します。
private void saveImage(String fullPath) {
File imgFile = new File(fullPath);
try {
if(imgFile.exists()) imgFile.delete();
URL url = new URL(this.fileURL);
URLConnection connection = url.openConnection();
HttpURLConnection httpConnection = (HttpURLConnection)connection;
InputStream in = httpConnection.getInputStream();
FileOutputStream fos = new FileOutputStream(imgFile);
int n = 0;
while((n = in.read()) != -1) {
fos.write(n);
}
fos.flush();
fos.close();
in.close();
}
catch(IOException e) {
imgFile.delete();
Log.d("IOException Thrown", e.toString());
}
}
書き込まれたファイルを確認すると、4576 バイトまで書き込むと常にスタックします。(元の画像サイズは 150k 以上です) この問題について私を助けてくれる人はいますか?