-2

我正在处理 javaserver 面孔,我在检查上传的图像文件的大小时遇到​​了问题,有人可以帮我吗?

4

2 回答 2

0

你可以java.io.File.length()用来获取大小。

获取文件大小java.io.File.length()是可以的,但它很慢。相反,你可以使用 fileChannel 的size方法。它比 j 快一点ava.io.File.length()

FileInputStream fis = null;
            try {
                File me = new File(your file path).getFile());
                fis = new FileInputStream(me);
                return fis.getChannel().size();
            } finally {
                fis.close();
            }
于 2013-01-25T08:44:48.893 回答
0

不确定您用于文件上传的内容,但您可以检查上传文件的“内容长度”标题。

或者,如果您使用的是“Apache commons fileupload”,您可以这样做

   ServletFileUpload upload = new ServletFileUpload();
    upload.setFileItemFactory(new DiskFileItemFactory());
    List fileItems = upload.parseRequest(request);

    for(int i=0; i < fileItems.size(); i++){
       FileItem item = (FileItem)fileItems.get(i);
       if(item.isFormField() == true){
          if(item.getFieldName() !=null  ){
             int fileSize = item.get().length ;
          }
       }
    }
于 2013-01-23T10:51:57.997 回答