首頁  >  文章  >  資料庫  >  如何將 BufferedInputStream 從資料庫轉換為 BufferedImage?

如何將 BufferedInputStream 從資料庫轉換為 BufferedImage?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-13 09:47:02148瀏覽

How to Convert a BufferedInputStream from a Database to a BufferedImage?

將 BufferedInputStream 轉換為映像

問題:

如何轉換從資料庫中擷取的 BufferedInputStream 物件?現有程式碼返回空圖像。

解決方案:

  1. 驗證 BufferedInputStream 是否包含有效影像。將其儲存到文件中,然後將其作為 BufferedImage 讀回進行確認。
  2. 確保在取得位元組時使用正確的 Blob 長度。對於 H2 資料庫,長度傳回為 long,但 Blob#getBytes 需要 int。
  3. 或者,使用 Blob#getBinaryStream 而不是 Blob#getBytes。如果資料庫不在記憶體中儲存 Blob 內容,這可能是必要的。

範例:

以下 Java 程式碼使用 Blob#getBinaryStream 讀取映像從資料庫中取得並將其轉換為 BufferedImage:

以上是如何將 BufferedInputStream 從資料庫轉換為 BufferedImage?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn