我有一个带有文件路径的字符串,并且我想使用该字符串实例化new FormFile
。这是可能的 ..?
我的代码:
public ArrayList<FormFile> getFilesFromFolder(String path) {
File file = new File(path);
ArrayList<FormFile> vFiles = new ArrayList<FormFile>();
if (file.exists()) {
File[] files = file.listFiles();
int i;
for (i = 0; i < files.length; i++) {
if (files[i].isFile()) {
vFiles.add((FormFile) files[i]);
}
}
} else {
vFiles = null;
}
return vFiles;
}
但是我在这行
vFiles.add((FormFile) files[i]);
中有一个错误java.lang.ClassCastException:
java.io.File无法转换为
org.apache.struts.upload.FormFile
最佳答案
FormFile
是一个接口(无法实例化)。查看此接口的实现,例如CommonsMultipartRequestHandler.CommonsFormFile
。这有一个构造函数,可以为表示文件的FileItem
(DiskFileItem
)创建。