【发布时间】:2021-05-13 16:46:59
【问题描述】:
我正在尝试找到一种方法来获取上传的 Excel 文件的作者。单击“上传”按钮后,我只能看到“字节 [] 内容”,我很困惑找不到找到上传文件作者的方法。当我运行以下代码时,我得到了 NoPropertySetStreamException。
public static Map<String, Boolean> validateFileSize(MultipartActionRequest request,
List<String> appCaseId) {
if (PortletFileUpload.isMultipartContent(request)) {
Map<String, List<MultipartFile>> multipartFiles;
multipartFiles = request.getMultiFileMap();
if (multipartFiles != null && !multipartFiles.isEmpty()) {
for ( List<MultipartFile> multipartFilesList : multipartFiles.values()) {
for ( MultipartFile item : multipartFilesList) {
byte[] contents;
try {
contents = item.getBytes();
try {
SummaryInformation si = (SummaryInformation)
PropertySetFactory.create(item.getInputStream());
si.getLastAuthor();
} catch (NoPropertySetStreamException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MarkUnsupportedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (IOException ioe) {
}
【问题讨论】:
-
这是一个较旧但可能很有帮助的答案:stackoverflow.com/questions/12861054/…
-
上传了什么样的
Excel文件?PropertySetFactory仅适用于旧的二进制BIFF格式 (*.xls)。当前的Offiice Open XML-Format (*.xlsx) 有POIXMLProperties。 -
@Alex - 我正在尝试上传 *.xlsx 文件
标签: java excel spring apache-poi portlet