获取文件名的时候,要注意对不同浏览器的处理,下面给出方法参考

FileItem类的常用方法:

1.  boolean isFormField()

isFormField方法用于判断FileItem类对象封装的数据是一个普通文本表单字段,还是一个文件表单字段,如果是普通表单字段则返回true,否则返回false。因此,可以使用该方法判断是否为普通表单域,还是文件上传表单域。

2.  String getName()
       getName方法用于获得文件上传字段中的文件名。

注意IE或FireFox中获取的文件名是不一样的,IE中是绝对路径,FireFox中只是文件名。

3.  String getFieldName()
      getFieldName方法用于返回表单标签name属性的值。如上例中<input type="text" name="column" />的value。

4.  void write(File file)

write方法用于将FileItem对象中保存的主体内容保存到某个指定的文件中。如果FileItem对象中的主体内容是保存在某个临时文件中,该方法顺利完成后,临时文件有可能会被清除。该方法也可将普通表单字段内容写入到一个文件中,但它主要用途是将上传的文件内容保存在本地文件系统中。

5.  String getString()
      getString方法用于将FileItem对象中保存的数据流内容以一个字符串返回,它有两个重载的定义形式:

public java.lang.String getString()

public java.lang.String getString(java.lang.String encoding)

throws java.io.UnsupportedEncodingException

前者使用缺省的字符集编码将主体内容转换成字符串,后者使用参数指定的字符集编码将主体内容转换成字符串。如果在读取普通表单字段元素的内容时出现了中文乱码现象,请调用第二个getString方法,并为之传递正确的字符集编码名称。

6.  String getContentType()
        getContentType 方法用于获得上传文件的类型,即表单字段元素描述头属性“Content-Type”的值,如“image/jpeg”。如果FileItem类对象对应的是普通表单字段,该方法将返回null。

7.  boolean isInMemory()
        isInMemory方法用来判断FileItem对象封装的数据内容是存储在内存中,还是存储在临时文件中,如果存储在内存中则返回true,否则返回false。

8.  void delete()
       delete方法用来清空FileItem类对象中存放的主体内容,如果主体内容被保存在临时文件中,delete方法将删除该临时文件。

尽管当FileItem对象被垃圾收集器收集时会自动清除临时文件,但及时调用delete方法可以更早的清除临时文件,释放系统存储资源。另外,当系统出现异常时,仍有可能造成有的临时文件被永久保存在了硬盘中。

9.  InputStream getInputStream()
    以流的形式返回上传文件的数据内容。

10. long getSize()
      返回该上传文件的大小(以字节为单位)。

使用FileItem获取文件名时注意事项相关推荐

  1. bat修改文件内容_批量获取文件名,这几招太高效了!

    每周末整理好重点报告库内容后,风弦都会发一篇推文,文章中为大家列出本周收录报告的清单. 有朋友就很好奇,我是怎么获取这么多文件的文件名的,复制粘贴么?当然,不是!重点报告库每周收录100+最新报告,复 ...

  2. FileUtils【获取SD卡根目录、读写文件、移动、复制、删除文件、获取文件名、后缀名操作类】...

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 封装了获取SD卡根目录路径.以及对文件读写.获取文件名等相关操作. 因为需要用到android.permission.READ_EX ...

  3. linux只提取前两个目录名,Linux技巧:介绍从目录路径获取文件名和目录前缀的方法...

    使用 dirname 命令获取路径名的目录部分 在 Linux 中,可以使用 dirname 命令获取路径名的目录部分,不包含路径名最后的文件名. 查看 man dirname 的说明如下: dirn ...

  4. Android 获取文件名 乱码

    上一篇"Android 文件关联详解".但是关联指定的文件后,点击文件使用程序打开文件时,如果文件名中有中文总是获取不到正确的文件名,通过Log看输出得到的全是类似下面的输出: / ...

  5. Python 下载文件获取文件名request.get(...,stream=True)

    借鉴了Python 下载文件获取文件名_我叫农的博客-CSDN博客_python获取下载文件名代码 大文件时要令stream=True.默认情况下false,会立即下载并保存在内存中. 默认情况下是f ...

  6. java获取视频时长

    java获取视频时长 需要一个包,没有的找我要(java-1.0.2-1.0.2.jar) 一个可以通过视频的url地址或者是上传视频 文件有类型为(MultipartFile)的来获取视频的时长. ...

  7. python如何获取文件的路径_python文件路径如何获取文件名?

    上次有小伙伴就来咨询小编这个问题,但是思索好久,不知道怎么跟大家详细阐述,因为很多小伙伴都是正在学习基础内容,还有些小伙伴都已经快达到进阶了,后来,想了很久,终于给大家解答了这个问题,下面内容不仅适合 ...

  8. java获取文件名后缀方法

    Java是一种应用广泛的编程语言,可以通过多种方式来实现对文件的操作.如文件名后缀.文件扩展名等.今天我们来看下 Java是如何获取文件名后缀的吧! 1.打开一个空文件,将其复制到一个新的文件夹中. ...

  9. Python3实现批量重命名文件(获取文件名、后缀名)

    import os#文件名不能包含冒号 pre = '[VX公众号(蛋叔)]' path = 'J:\willupload' #当操作的文件不在当前目录时必须先进入目录 os.chdir(path) ...

最新文章

  1. Firefox Quantum 向左,Google Chrome 向右
  2. Java面向对象编程思想
  3. Java基础学习总结(20)——基础语法
  4. 数格子算面积的方法_水基材料防锈试验方法:铸铁粉末法
  5. Js代码执行 变量的值 运算 变量提升
  6. Java 8 Friday Goodies:SQL ResultSet流
  7. mysql 分页效率_MYSql分页查询效率提高
  8. c语言分治法求众数重数_分治法求众数 - osc_twlari2q的个人空间 - OSCHINA - 中文开源技术交流社区...
  9. Rancher如何按计算资源调度
  10. Java SQL 注入学习笔记
  11. android 边框重叠,android - Android:recyclerview中的viewitems轮廓与recyclerview边框重叠 - 堆栈内存溢出...
  12. 故障:Outlook 收发邮件时的 0x800CCC1A 错误
  13. 关于区块链的一点经济学思考
  14. excel转word后表格超出页面_excel转word后表格显示不全
  15. java heap space 什么意思_java heap space是什么意思?
  16. sshd报错Privilege separation user sshd does not exist的解决办法
  17. 网站建设就是要大胆创新
  18. WSL ubuntu ‘Permission denied’的解决方法
  19. PROC SURVEYSELECT
  20. 百度云盘群组下载,细节操作让你摸不着头脑?

热门文章

  1. JS作用域相关知识(#精)
  2. webpack 大法好 ---- 基础概念与配置(1)
  3. 【Codeforces 738D】Sea Battle(贪心)
  4. swift轮播图代码
  5. Packagist / Composer 中国全量镜像
  6. 集合list set Map问题
  7. POJ-1753 Flip Game 枚举 状态压缩
  8. 关于Nikon Ai AF 28mm F1.4D遮光罩的问题
  9. IOS数据存储之文件沙盒存储
  10. [转] vuewebpack多页面配置