我正在使用Apache Commons Uploader包,我正在尝试读取正在上传的文件。我有一个FileItem对象。
该文件的前几行是ASCII,我希望能够读取它们并提取其中包含的元数据。这样做的最佳方法/模式是什么?
答案 0 :(得分:2)
在getInputStream()
上调用FileItem
,将其包裹在BufferedReader
中,然后使用BufferedReader.readLine()
逐行阅读您的文件,直到您阅读了元数据。< / p>
答案 1 :(得分:1)
final List<FileItem> files = new ServletFileUpload(new DiskFileItemFactory())
.parseRequest(httpRequest.getWrappedRequest());
final List<Long> images = new ArrayList<>();
for (final FileItem file : files) {
if (file.getFieldName().equals("file")) {
final InputStream stream = file.getInputStream();
final byte[] bytes = IOUtils.toByteArray(stream);
...
file.delete();
}
}
files.clear();