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()
返回该上传文件的大小(以字节为单位)。
分享到:
相关推荐
在Web开发中,当用户通过HTML表单上传文件时,服务器端需要解析这些请求,FileItem类提供了方便的方法来操作这些上传的数据。 1. `isFormField()`: 这个方法用于区分FileItem对象所代表的是普通的文本表单字段还是...
FileItem类提供了许多有用的方法,例如: * boolean FileItem.isFormField()判断当前这个表单项,是否是普通的表单项还是上传的文件类型。 * String FileItem.getFieldName()获取表单项的name属性值。 * String ...
可以通过`ServletFileUpload.parseRequest()`方法从`HttpServletRequest`对象中提取`FileItem`。 7. **处理上传文件**:一旦有了`FileItem`对象,就可以根据需要处理每个文件。如果是文件,可以将其移动到服务器的...
Apache Commons 是一个由 Apache 软件基金会维护的开源项目集合,它提供了许多Java编程中常用的实用工具类库。在本案例中,我们关注的是Apache Commons中的FileUpload组件,其版本为20070818。这个组件主要用于处理...
这个库的核心类包括`FileItem`和`ServletFileUpload`。`FileItem`代表了上传的一个部分,它可以是文本字段或者一个文件。`ServletFileUpload`则用于解析HTTP请求,将上传的数据转换为`FileItem`对象。 具体使用步骤...
Apache Commons IO是另一个常用的Java库,它提供了大量的IO操作工具类,增强了Java的标准IO功能。`commons-io-1.4.jar`是该库的一个早期版本,包含了大量的实用方法,如文件复制、删除、重命名、读写操作等。在处理...
这个库提供了`FileItem`接口,代表一个上传的文件或表单字段,以及`FileUpload`类,用于解析请求并返回`FileItem`实例。通过这些API,开发者可以轻松地接收和处理用户上传的文件,如保存到服务器、验证文件大小和...
Apache Commons IO是另一个常用的Java库,它提供了一系列与I/O相关的实用工具类,可以辅助处理文件操作,如读写、复制、删除、重命名等。在文件上传过程中,当`FileItem`对象被解析出来后,可以借助Commons IO的工具...
在Java开发中,文件上传...以上内容覆盖了Java Web开发中文件上传下载的基本原理和常用技术,开发者可以根据具体需求选择适合的库和方法来实现相关功能。在实际项目中,还需要关注性能优化、错误处理和用户体验等方面。
- `FileItem`类:表示一个上传的文件项,包含了文件名、类型、大小等信息。 3. **使用步骤** - 引入SmartUpload库:在JSP页面或Servlet中导入SmartUpload相关的jar包。 - 创建SmartUpload实例:在JSP或Servlet中...
它的主要类包括`FileItem`,`FileItemFactory`和`ServletFileUpload`,其中`ServletFileUpload`是处理Servlet容器中文件上传的核心类。通过这些类,开发者可以轻松地读取、处理和存储上传的文件。 `commons-io-1.4....
4. **FileItem接口**:`FileItem`是上传文件的表示,它提供了读取文件内容、获取文件名、判断是否为普通字段(非文件)等方法。对于上传的每个部分,都会生成一个`FileItem`实例。 5. **使用示例**:在Servlet中...
在这个方法中,首先设置了字符编码,然后使用`FileItem`类来处理上传的文件项。 ```java import java.io.File; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet....
- **FileItem**:封装单个表单字段数据,提供获取表单字段信息的方法。 - **FileUploadException**:在上传过程中捕获和处理异常的基础类。 5. **JSP处理图片数据**: - **页面设计**:包括上传页面、图片列表...
这通常通过添加JAR依赖到项目的类路径来完成。确保包含了SmartUpload的核心库和其他必要的依赖,以便正确运行。 接下来,创建一个新的Servlet来处理文件上传。在`doPost`方法中,初始化SmartUpload实例: ```java ...
FileUpload库提供了`DiskFileItemFactory`类,用于创建解析多部分数据的`FileItem`对象。工厂类可以设置临时存储路径和大小限制,以控制文件上传的行为。 4. **解析请求** 使用`ServletFileUpload`类解析请求。它...
`ServletFileUpload.isMultipartContent()`方法用来判断请求是否包含文件上传数据,如果返回true,则可以使用`parseRequest(request)`方法解析请求并获取`FileItem`对象。每个`FileItem`代表一个上传的文件或表单...
`jspSmartUpload` 是一个在Java Web开发中常用的上传下载组件,它为开发者提供了方便、高效的方式来处理文件上传和下载的功能。这个组件在2000年代中期非常流行,因为它简化了处理用户通过表单上传大文件的流程,...
### SWT常用组件详解 SWT(Standard Widget Toolkit)是一种用于构建Java应用程序的用户界面工具包...以上是对SWT中常用组件的详细介绍,包括它们的样式、方法及示例代码,希望能帮助开发者更好地理解和使用这些组件。
然后,利用`ServletFileUpload`类解析请求,获取`FileItem`对象,每个`FileItem`代表一个上传项,可以是普通表单字段或文件。 4. **处理文件**:对于每个`FileItem`,检查其是否为文件。如果是,可以使用`commons-...