请问jsp页面如何能获取到上传文件的大小,我想通过获取的大小,判断该文件是否可以被上传,请详细点,谢谢 5
展开全部
因权限和安全限制,js是不能获得本地文件大小的,除非安装控件。
jsp获取上传文件大小方法如下:
long size=request.getContentLength() ;
在文件准备上传之前就可以得到其大小。
当然了,在客户端基本上不大可能获取大文件大小的,必须是文件提交上传开始后,在服务端获取得到的,request.getContentLength() ; 可以在接受数据流之前就可以获得当前要上传的文件流大小。 这样你可以在服务端控制文件上传之前是否允许继续接受数据流。
jsp获取上传文件大小方法如下:
long size=request.getContentLength() ;
在文件准备上传之前就可以得到其大小。
当然了,在客户端基本上不大可能获取大文件大小的,必须是文件提交上传开始后,在服务端获取得到的,request.getContentLength() ; 可以在接受数据流之前就可以获得当前要上传的文件流大小。 这样你可以在服务端控制文件上传之前是否允许继续接受数据流。
展开全部
你可以使用File类的length属性获取文件的大小。你可以使用注释掉的方法,在struts2的action类里使用,判断后前台jsp页面提示用户,如果写action类要测试比较麻烦的。
public class Test {
// 最大文件大小为10M
public static Long MAX_FILE = 10485760L;
public static void main(String[] args) {
File file = new File("D:\\abc.txt");
long fileSize = file.length();
if (fileSize > MAX_FILE)
System.out.println("超出文件大小限制");
// if (file.get(i).length() > MAX_FILE) {
// Struts2Utils.renderHtml("上传文件过大,请重新上传!");
// return null;
// }
}
}
public class Test {
// 最大文件大小为10M
public static Long MAX_FILE = 10485760L;
public static void main(String[] args) {
File file = new File("D:\\abc.txt");
long fileSize = file.length();
if (fileSize > MAX_FILE)
System.out.println("超出文件大小限制");
// if (file.get(i).length() > MAX_FILE) {
// Struts2Utils.renderHtml("上传文件过大,请重新上传!");
// return null;
// }
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个,说真的,我还真没有在页面上获得过文件的大小,如果你用的是struts 2 或者是spring ,都可以在配置文件里限制上传文件的大小!不过,你可以试试用js来判断文件的大小
追问
我是用的struts2,配置文件只能限制上传文件的大小,如果我上传的文件时0字节,我该在什么地方进行判断,该文件不能上传
追答
这个真不清楚,我觉得只要文件是允许类型内而且大小也在被允许范围内,你管他上传多大的,你说呢
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以把值获得传给后台,后台再传给jsp页面然后做判断。
String fileName = file.getFileName();//获取名字
int point = fileName.indexOf(".") + 1;
String file_type = fileName.trim().substring(point,
fileName.length());
session.setAttribute("file_name", file_name);
session.setAttribute("file_type", file_type);
String fileName = file.getFileName();//获取名字
int point = fileName.indexOf(".") + 1;
String file_type = fileName.trim().substring(point,
fileName.length());
session.setAttribute("file_name", file_name);
session.setAttribute("file_type", file_type);
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询