2 csdnzlw csdnzlw 于 2016.02.04 11:14 提问

java 后台如何判断上传图片大小。

java 后台如何判断上传图片大小。File file = new File(path + "\" + fileName+".jpg");
long size = file.length();

        size不好用呢

6个回答

91program
91program   Ds   Rxr 2016.02.04 11:22

上传图片,一般先要上传一些图片的属性,如:文件名,大小(长和宽)等,然后再上传图片数据。
否则,传到后台,后台就只能使用默认的名称,而无法与上传方建立对应关系。

或者,上传后由后台解析图片而获取到图片的大小。

beacon_2011
beacon_2011   Rxr 2016.02.05 16:18

BufferedImage sourceImg = javax.imageio.ImageIO.read(in);可得到宽高 sourceImg.getWidth()
sourceImg.getHeight()
File file=new File(path);
ImageIO.write(sourceImg, 后缀, file);
file.length();
将图片的文件转为File类型,有length方法可得到文件大小,格式就看文件名的后缀了

rui888
rui888   Ds   Rxr 2016.02.04 11:22
 import java.io.File;

public class Main {
   public static long getFileSize(String filename) {
      File file = new File(filename);
      if (!file.exists() || !file.isFile()) {
         System.out.println("File doesn\'t exist");
         return -1;
      }
      return file.length();
   }
   public static void main(String[] args) {
      long size = getFileSize("c:/java.txt");
      System.out.println("Filesize in bytes: " + size);
   }
}
csdnzlw
csdnzlw   2016.02.04 11:46

后台解析图片而获取到图片的大小。
如何解析判断大小。

NUC_White
NUC_White   2016.02.04 14:56

这个好解决,是可以判断大小,你们讲IO流的时候,读流有个方法叫inputStream.available()来获取文件的总大小。
public int available() throws IOException
返回此输入流下一个方法调用可以不受阻塞地从此输入流读取(或跳过)的估计字节数。下一个调用可能是同一个线程,也可能是另一个线程。一次读取或跳过此估计数个字节不会受阻塞,但读取或跳过的字节数可能小于该数。
注意:
有些 InputStream 的实现将返回流中的字节总数,但也有很多实现不会这样做。试图使用此方法的返回值分配缓冲区,以保存此流所有数据的做法是不正确的。
如果已经调用 close() 方法关闭了此输入流,那么此方法的子类实现可以选择抛出 IOException。
类 InputStream 的 available 方法总是返回 0。
此方法应该由子类重写。

返回:
可以不受阻塞地从此输入流读取(或跳过)的估计字节数;如果到达输入流末尾,则返回 0。
抛出:
IOException - 如果发生 I/O 错误。

xionglangs
xionglangs   Rxr 2016.02.04 15:39

![图片说明](https://img-ask.csdn.net/upload/201602/04/1454571525_696704.png)图片说明用uploadify插件

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
JAVA改变上传图片大小
package com.test; import java.awt.image.BufferedImage; import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.Image; import java.io.File; import java.io.IOExc
C#后台判断上传文件大小
if (hf.ContentLength > 0)//是否有文件             {                 int fileSize = 0;                 fileSize = hf.ContentLength;//取得大小                                if (fileSize                 {
js判断上传图片大小限制300k
input 标签 js代码 function limitJpg(path) { var max_size = 0.293;// M,300k var img = new Image(); var file = document.getElementById(path); var fileData
判断上传图片大小
public ActionResult SaveEdit( HttpPostedFileBase img) { double size = img.ContentLength *1.0/ 1024 / 1024;                         if (size > 2)                         {
js判断上传图片大小
图片文件可以      var   img=null;   function   s()   {       if(img)img.removeNode(true);       img=document.createElement("img");       img.style.position="absolute";       img.style.visibility="hidden";
上传前判断图片大小
K<!--var oFileChecker = document.getElementById("fileChecker");function changeSrc(filePicker){ oFileChecker.src = filePicker.value;}oFileChecker.onreadystatechange = functi
判断上传的图片大小
function getImageSrc(imagefile){    var image=new Image();        image.dynsrc=imagefile;            if(500*1024     {        alert("图片过大");        //documen
高度,javascript判断上传图片大小,宽度,高度
js判断上传图片大小,宽度,高度,javascript判断上传图片大小,宽度,高度
kindeditor 使其支持配置上传路径,限制上传图片大小(java)
kindeditor是一个很好的富文本编辑器。但是也有部分功能需要自己二次开发。 在开发过程中,碰见了一个尴尬的问题,kindeditor不支持前端验证图片的大小。 但是实际js是可以做到验证图片的size的。function getImgSize(field_id){ //field_id 是<input type="file" id="field_id"/> v
js 获取远程图片大小(判断上传图片大小)
function getImageSize(cfg){ var img=document.createElement('img'); callback=cfg.oncomplete; img.src = typeof cfg.img == 's