• Java中获得文件的文件后缀

 import java.io.*;
public class FileTest{
public static void main(String args[]){
File f =new File("TileTest.doc");
String fileName=f.getName();
String prefix=fileName.substring(fileName.lastIndexOf(".")+1);
System.out.println(prefix);
}
}
  • struts.xml中上传文件类型的限制

 <!-- 允许后缀名为png,bmp,jpg,doc,xls的文件上传 -->
<param name="allowedExtensions">
png,bmp,jpg,doc,xls
</param>
 使用Struts文件上传功能,我们可以使用”文件类型“和”文件后缀名“两者中的一个来控制上传文件的类型/后缀名。但是,allowedTypes的优先级别高于allowedExtensions,  如果配置了allowedTypes则allowedExtensions将不再起效。
如果我们要利用allowedExtensions参数来控制上传文件的后缀名,则不能配置allowedTypes参数。
否则,如果allowedTypes参数有配置,那么allowedExtensions参数将不会再起效。

详情:http://blog.csdn.net/smcwwh/article/details/7349449

  • struts.xml上传文件大小的限制

 <struts>
<constant name="struts.multipart.maxSize" value="50000000" /> <package ...
<action ...
<interceptor-ref ...
<!-- 配置允许上传的文件大小,单位字节 -->
<param name="maximumSize">40000000</param>

struts.multipart.maxSize和fileUpload拦截器的maximumSize属性分工不同,总结如下:

1.struts.multipart.maxSize掌控整个项目所上传文件的最大的Size。

  超过了这个size,后台报错,程序处理不了如此大的文件。

  fielderror里面会有如下的提示: the request was rejected because its size (16272982) exceeds the configured maximum (9000000)

2.fileUpload拦截器的maximumSize属性必须小于struts.multipart.maxSize的值。

  struts.multipart.maxSize默认2M,当maximumSize大于2M时,必须设置struts.multipart.maxSize的值大于maximumSize。

3.当上传的文件大于struts.multipart.maxSize时,系统报错 当上传的文件在struts.multipart.maxSize和maximumSize之间时,系统提示: File too large: file "MSF的概念.ppt" "upload__5133e516_129ce85285f__7ffa_00000005.tmp" 6007104 当上传的文件小于maximumSize,上传成功。

详情:http://www.cnblogs.com/forlina/archive/2011/09/08/2171404.html

04-24 19:46
查看更多