下面介绍FileItem类中的几个常用的方法:1. isFormField方法isFormField方法用于判断FileItem类对象封装的数据是否属于一个普通表单字段,还是属于一个文件表单字段,如果是普通表单字段则返回true,否则返回false。该方法的完整语法定义如下:public boolean isFormField()2. getName方法getName方法用于获得文件上传字段中的文件名,对于图1.3中的第三个分区所示的描述头,getName方法返回的结果为字符串“C:\bg.gif”。如果FileItem类对象对应的是普通表单字段,getName方法将返回null。即使用户没有通过网页表单中的文件字段传递任何文件,但只要设置了文件表单字段的name属性,浏览器也会将文件字段的信息传递给服务器,只是文件名和文件内容部分都为空,但这个表单字段仍然对应一个FileItem对象,此时,getName方法返回结果为空字符串"",读者在调用Apache文件上传组件时要注意考虑这个情况。getName方法的完整语法定义如下:public

String getName()注意:如果用户使用Windows系统上传文件,浏览器将传递该文件的完整路径,如果用户使用Linux或者Unix系统上传文件,浏览器将只传递该文件的名称部分。3.getFieldName方法getFieldName方法用于返回表单字段元素的name属性值,也就是返回图1.3中的各个描述头部分中的name属性值,例如“name=p中的“p。getFieldName方法的完整语法定义如下:public String getFieldName()4. write方法write方法用于将FileItem对象中保存的主体内容保存到某个指定的文件中。如果FileItem对象中的主体内容是保存在某个临时文件中,该方法顺利完成后,临时文件有可能会被清除。该方法也可将普通表单字段内容写入到一个文件中,但它主要用途是将上传的文件内容保存在本地文件系统中。其完整语法定义如下:public

void write(File file)5.getString方法 getString方法用于将FileItem对象中保存的主体内容作为一个字符串返回,它有两个重载的定义形式:public java.lang.String getString()public java.lang.String getString(java.lang.String encoding) throws java.io.UnsupportedEncodingException前者使用缺省的字符集编码将主体内容转换成字符串,后者使用参数指定的字符集编码将主体内容转换成字符串。如果在读取普通表单字段元素的内容时出现了中文乱码现象,请调用第二个getString方法,并为之传递正确的字符集编码名称。6.

getContentType方法getContentType 方法用于获得上传文件的类型,对于图1.3中的第三个分区所示的描述头,getContentType方法返回的结果为字符串“image/gif”,即“Content-Type”字段的值部分。如果FileItem类对象对应的是普通表单字段,该方法将返回null。getContentType 方法的完整语法定义如下:public String getContentType()7. isInMemory方法isInMemory方法用来判断FileItem类对象封装的主体内容是存储在内存中,还是存储在临时文件中,如果存储在内存中则返回true,否则返回false。其完整语法定义如下:public

boolean isInMemory()8. delete方法delete方法用来清空FileItem类对象中存放的主体内容,如果主体内容被保存在临时文件中,delete方法将删除该临时文件。尽管Apache组件使用了多种方式来尽量及时清理临时文件,但系统出现异常时,仍有可能造成有的临时文件被永久保存在了硬盘中。在有些情况下,可以调用这个方法来及时删除临时文件。其完整语法定义如下:public void delete()FileUploadException类在文件上传过程中,可能发生各种各样的异常,例如网络中断、数据丢失等等。为了对不同异常进行合适的处理,Apache文件上传组件还开发了四个异常类,其中FileUploadException是其他异常类的父类,其他几个类只是被间接调用的底层类,对于Apache组件调用人员来说,只需对FileUploadException异常类进行捕获和处理即可。举例:String

path = request.getSession().getServletContext().getRealPath("/") + ;DiskFileItemFactory factory = new DiskFileItemFactory ();factory.setSizeThreshold(4096);ServletFileUpload upload = new ServletFileUpload(factory);upload.setFileSizeMax(1024 * 1024);List fileItems

= upload.parseRequest(request);Iterator it = fileItems.iterator();while(it.hasNext()){FileItem item = (FileItem)it.next();if(!item.isFormField){Date now = new Date();SimpleDateFormat s = new SimpleDateFormat(yyyyMMddHHmmssSS);String name = sdf.format(now)

+ ".jpg";item.write(new File(path + name)); }}

版权声明:本文为博主原创文章,未经博主允许不得转载。

fileitem方法_FileItem的常用方法相关推荐

  1. fileitem方法_FileItem类的常用方法

    FileItem类的常用方法: 1.  boolean isFormField() isFormField方法用于判断FileItem类对象封装的数据是一个普通文本表单字段,还是一个文件表单字段,如果 ...

  2. fileitem方法_FileItem类的常用方法(关于文件上传的)

    1.boolean  isFormField().isFormField方法用来判断FileItem对象里面封装的数据是一个普通文本表单字段,还是一个文件表单字段.如果是普通文本表单字段,返回一个tr ...

  3. fileitem方法_FileItem类

    FileItem类主要是封装了一个File Item或者是FormItem,它的主要的方法如下,需要说明的是对于FormItem类型的,getName会得到null,getContentType会得到 ...

  4. fileitem方法_FileItem类的getContentType ()方法,用于获得上传文件的类型。_学小易找答案...

    [判断题]我们经常调用createItem()方法将请求消息实体创建成FileItem实例对象. [单选题]下面用于判断FileItem类对象封装的数据是否为普通文本表单字段的方法是() [单选题]关 ...

  5. fileitem方法_浅谈FileItem类的常用方法

    FileItem类的常用方法: 1.  boolean isFormField() isFormField方法用于判断FileItem类对象封装的数据是一个普通文本表单字段,还是一个文件表单字段,如果 ...

  6. fileitem方法_java相关:浅谈FileItem类的常用方法

    java相关:浅谈FileItem类的常用方法 发布于 2020-5-2| 复制链接 下面小妖就为大家带来一篇浅谈FileItem类的常用方法.小妖觉得挺不错的,现在就分享给大家,也给大家做个参考.一 ...

  7. fileitem方法_java上传文件(FileItem类的常用方法)

    1.boolean  isFormField().isFormField方法用来判断FileItem对象里面封装的数据是一个普通文本表单字段,还是一个文件表单字段.如果是普通文本表单字段,返回一个tr ...

  8. fileitem方法_Common-FileUpload框架中的FileItem对象 | 学步园

    不管是文件域还是普通表单域,Common-FileUpload框架都把它当成FileItem对象,FileItem类包含的一些常用方法: 1. isFormField方法 isFormField方法用 ...

  9. java 数组的方法_数组常用方法

    [TOC] # 定义 ~~~ //初始化一个长度为8的定长数组,其所有元素均为0 val arr1 = new Array[Int](8) //直接打印定长数组,内容为数组的hashcode值 pri ...

最新文章

  1. 儿童吹泡泡水简单配方_自制泡泡水最简单配方的做法教程
  2. 11.1.2 DOM
  3. python核心编程6-14习题的解题思路
  4. Java中HashMap遍历的两种方式
  5. [FW]软件开发中的11个系统思维定律
  6. r和matlab学哪个,初学者求教‘r*’是什么意思啊
  7. 程序员的乐趣从哪来?编程能给我带来乐趣吗?
  8. android谷歌反地理,android – 谷歌地理编码服务是不可用的(协调地址)
  9. 用x360ce,北通蓝牙手柄成功玩双人成行
  10. 百度ueditor实现word图片自动转存
  11. 【JZOJ 省选模拟】6691.六道剑「一念无量劫」
  12. Error: ImageIO: PNG invalid PNG file: iDOT doesn't point to valid IDAT chunk 解决
  13. java聊天室群聊及私聊实现!
  14. Vue2 - 网易云音乐项目笔记(基于Vant UI组件库)
  15. html 二维表_焦虑症自测表,自测你的焦虑程度
  16. 藏宝阁游戏服务器维护中,梦幻西游2013年1月22日藏宝阁维护公告 17173.com网络游戏:《梦幻西游》专区...
  17. 37岁计算机博士博士后,应该说,这是我见过“最掏心”的人才招聘了:招博士、博士后!...
  18. 3D空间中的平面对称点
  19. 加入一个组播组过程分析
  20. 不让自己显示在彩虹QQ的隐身列表中

热门文章

  1. Comparable接口的使用:(知识回顾)
  2. java 写入指定路径文件_java对指定目录下文件读写操作介绍 | 学步园
  3. JAVA50道经典编程题
  4. python include的功能_在Python的Config中增加Include功能
  5. java inputstream read_20191209-java部分流处理
  6. android显示网络图片控件,Android控件之ImageView(二)
  7. linux禁用防火墙配置,CentOS Linux防火墙配置及关闭
  8. css 动态生成圆形区域内扇形个数_CSS实用技巧总结
  9. 数据结构排序2-希尔,快速,归并排序
  10. pycharm无法导入本地模块问题