ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## **upload** 使用前提 ~~~ enctype="multipart/form-data" method="post" ~~~ 1. 创建一个 磁盘文件项目工厂 ~~~ DiskFileItemFactory factory = new DiskFileItemFactory() ~~~ 2. 指定一个临时目录(缓冲区) ~~~ getServletContext().getRealPath("temp"); ~~~ 3. 设置缓冲区参数 ~~~ setSizeThreshold(1024*1024);设置大小 setRepository(File);指定缓冲区的位置 ~~~ 4. 创建上传文件的核心类 ~~~ ServletFileUpload upload = new ServletFileUpload(DiskFileItemFactory) ~~~ 5. 处理上传文件 ~~~ setHeaderEncoding("utf-8") isMultipartContent(request)判断是否是上传文件操作 ~~~ 6. 解析请求 ~~~ parseRequest(request) 返回List<FileItem> ~~~ 7. 遍历表单每个字段 ~~~ isFormField() 判断是否是普通表单字段 getFielName() 获得字段name值 getString("utf-8") 获得字段value值并转码 getName() 获得要上传文件的名称 getInputStream()通过输入流拿到数据 write(File)文件上传到的位置 ~~~ 8. 关闭资源,关闭流,清除缓存区临时文件 ~~~ delete();清空缓存区的临时文件 ~~~