image4j 0.7 ライブラリを使用して .ico ファイルをデコードしようとしています。
私のコードはここにあります:
//File address
String sourceAddress="/home/tojandro/Desktop/favicon.ico";
//Read data
InputStream inputStream=new FileInputStream(sourceAddress);
ByteArrayOutputStream outputStream=new ByteArrayOutputStream();
byte[] buffer=new byte[0xfff];
int length=-1;
while( (length=inputStream.read(buffer))>0 )
outputStream.write(buffer, 0, length);
outputStream.flush();
inputStream.close();
ByteArrayInputStream dataBuffer=new ByteArrayInputStream(outputStream.toByteArray());
//Try to decode
System.out.println("Decode begin.");
ICODecoder.read(dataBuffer); //This method could never been return.
//ICODecoder.read(new File(sourceAddress)); //This method works well.
System.out.println("Decode finished.");
私の問題は次のとおりです。
ファイルから直接画像をデコードすると、この方法はうまく機能します。
しかし、バイトバッファから画像をデコードすると、メソッドが返されないことがあります(一部のファイルは正常で、一部のファイルは正常ではありません)。
誰でも私を助けることができますか?ありがとう。