java獲取圖片大小
⑴ java 根據url獲取圖片高和寬
String imageUrl="http://avatar.csdn.net/9/F/2/1_5iasp.jpg";
BufferedImage image=getBufferedImage(imageUrl);
if (image!=null)
{
System.out.println("圖片高度:"+image.getHeight());
System.out.println("圖片寬度:"+image.getWidth());
}
else
{
System.out.println("圖片不存在!");
}
⑵ imageio java最大能讀取多大尺寸的圖片
BufferedImage image = javax.imageio.ImageIO.read(file);報錯:java.lang.OutOfMemoryError
: Java heap space
圖片大小是3425px*4843px,我本機內存1g。
------解決方案--------------------------------------------------------
Xms Xmx 把jvm的heap 調大點 試試~~~
------解決方案--------------------------------------------------------
設置一下stack size的大小 java 後跟參數即可設置,具體參數如下:
-Xms size set initial Java heap size
-Xmx size set maximum Java heap size
-Xss size set java thread stack size
------解決方案--------------------------------------------------------
用java.exe -Xmx1024m -Xms256m .來運行的程序,你機器是1G但是又沒分配給jvm
------解決方案--------------------------------------------------------
ImageIO.read(File file)使用來自boolean getUseCache() 和 File getCacheDirectory()的當前緩存設置控制所創建的 ImageInputStream 中的緩存。其中getUseCache()默認設定是true,getCacheDirectory()返回的是setCacheDirectory(File cacheDirectory)所設定的目標,如果用戶沒有明顯設定,那麼getCacheDirectory()返回的將是null。
⑶ java 如何取得圖片的寬度,厘米而非象素
建議使用PS軟體進行調整。
操作步驟:
1.打開需要處理的照片,在「圖像」中找到「圖像大小」。
2.然後就可以進行對寬和高進行調整了。
注意:要把下方「約束比例」的勾去掉,不然是修改不了想要的數值。
⑷ JAVA怎麼判斷圖片的大小
用IO把文件通過你已知的地址獲取到。源地址就是那個文件的連接。獲取到文件對象後,可以通過屬性獲取到大小。
或者有個笨方法,你把文件寫到本地再獲取大小,然後把圖片刪掉。
⑸ java哪個類提供了獲取圖片所佔存儲空間大小或者如何計算求詳細
圖片占內存容量計算公式為:
圖片所佔內存大小 = 圖片長度(像素) * 圖片寬度(像素) * 一個像素所佔內存空間(單位:位元組)
一般地,一個象素所佔內存空間根據機器顏色數(專業詞彙叫色深Color Depth)來決定:(1)Nokia 老S40機器 顏色數為4096色,就是2^12, 一個象素所佔內存空間為1.5個位元組;(2)Nokia S40新版 機器和 S60機器 顏色數為65536色,就是2^16, 一個象素所佔內存空間為2個位元組;有些機器顏色數為26w色,就是2^18=2.2位元組,1600w = 2^24=3個位元組,一個象素所佔內存空間為4個位元組。
ps:專業名詞「8位」是指所能表現的顏色深度:一個8點陣圖像僅最多隻能支持256(2^8)種不同顏色,1個位元組。