2

データベースから複数の「ブロブ」画像を取得し、それらを連結するコードを書いています。以下はコードです

ResultSet images = pst.executeQuery();
byte[] imageData = null;
Blob blob = null;
int blobLength = 0;
List<BufferedImage> list = new LinkedList();

while (images.next()) {                                 
    blob = ((OracleResultSet) images).getBLOB(2);
    blobLength = (int) blob.length();
    imageData = blob.getBytes(1, blobLength);   
    list.add(ImageIO.read(new ByteArrayInputStream(imageData)));
}

問題は、変数「imageData」に画像が含まれているにもかかわらず、リストが常にnullであることです(チェックしました)。つまり、Java は ByteArrayInputStream を BufferedImage に変換できませんでした。なぜですか??!!

4

0 に答える 0