我正在使用apache commons file upload 1.1。目前,我正在使用parseRequest(request)解析来自请求的项。
现在我有一个额外的请求上传一个文件。如果用户不上传任何文件,就像default文件一样。
这有可能吗?
提前感谢
发布于 2014-04-04 06:54:29
parseRequest返回FileItem的列表。因此,当列表为空时,没有上传文件。
因此,您只需要测试列表是否为空。以使用FileUpload为例
ServletFileUpload upload = new ServletFileUpload(factory);
List<FileItem> items = upload.parseRequest(request);
if (items.isEmpty()) {
// process some default file
} else {
// process uploaded file
}更新:
根据处理上传的项目,您可以在请求中混合文件和常规表单字段。您可以迭代这些参数,在看到文件上载时设置一个标志,然后采取相应的行动。
// Process the uploaded items
boolean fileUploaded = false;
Iterator<FileItem> iter = items.iterator();
while (iter.hasNext()) {
FileItem item = iter.next();
if (item.isFormField()) {
processFormField(item);
} else {
processUploadedFile(item);
fileUploaded = true;
}
}
if (!fileUploaded) {
// process some default file
}https://stackoverflow.com/questions/22854287
复制相似问题