2013-04-20 53 views
2

我正在製作一個j2me應用程序。在這個應用程序中,我想上傳超過1 MB的圖片。但是,由於大部分手機的堆大小分配限制爲1 MB,所以當我嘗試創建超過1 MB大小的圖像輸入流時,它會拋出異常。所以我如何在j2me應用程序中壓縮圖像以在服務器上進行上傳。如何在j2me中壓縮圖像

+0

您的輸入流是否緩衝?什麼是緩衝區大小? – 9000 2013-04-20 13:08:30

+0

感謝您的回覆, InputStream inputStream = fileConnection.openInputStream(); 以這種方式創建輸入流。拋出OutOfMemory異常在這一點上。請告訴我解決這個問題的方法,它非常緊迫。 – mark 2013-04-20 13:16:21

回答

0

不要一次加載所有圖像逐個上傳圖像並清除以前的圖像,這些圖像將釋放內存並調整圖像大小以減小圖像大小。

+0

@Faraz ...謝謝你的回覆....但是請告訴我如何在不創建輸入流的情況下調整圖像大小,當我創建大文件輸入流時出現問題,此時發生OutOfMemory異常。 – mark 2013-04-22 03:38:12

0

您使用scale()方法根據屏幕大小調整圖像的大小。如果您希望圖像適合手機屏幕尺寸,請使用Displayable.getWidth和getheight方法。將它們作爲Scale(w,h)傳遞給Scale方法,並在圖像變量上調用scale。大多數情況下,它會減少可以通過堆處理的圖像大小。如果它仍然更高,然後將圖像分成小字節,然後上傳