如何在Android中获取图像的大小?

时间:2012-02-16 18:31:54

标签: android image image-size

我能够获得图像的高度和宽度。但有没有办法检索手机中存储的图像的大小(以字节或kb或mb为单位)?

5 个答案:

答案 0 :(得分:19)

感谢您的回答。这就是我最终解决它的方式:

 Bitmap bitmapOrg = BitmapFactory.decodeResource(getResources(), 
            R.drawable.ic_launcher);


     Bitmap bitmap = bitmapOrg;
     ByteArrayOutputStream stream = new ByteArrayOutputStream();   
     bitmap.compress(Bitmap.CompressFormat.JPEG, 100, stream);   
     byte[] imageInByte = stream.toByteArray(); 
     long lengthbmp = imageInByte.length; 

感谢您的时间和答案:)

答案 1 :(得分:10)

您只需要创建一个新的File对象,例如......

String filepath = Environment.getExternalStorageDirectory() + "/file.png";
File file = new File(filepath);
long length = file.length();

答案 2 :(得分:8)

假设您在谈论位图(而不是ImageView),则有一种方法Bitmap.getByteCount()

答案 3 :(得分:5)

 File file = new File("/sdcard/imageName.jpeg");
 long length = file.length();
 length = length/1024;
 System.out.println("File Path : " + file.getPath() + ", File size : " + length +" KB");

答案 4 :(得分:2)

当您通过右键单击查看文件详细信息时,将返回计算机中匹配的真实大小。

File file = new File("/sdcard/my_video.mp4");
long length = file.length() / 1024; // Size in KB