我想使用 APache Tika 的 MediaType 类来比较 mediaType。
我首先使用 Tika 来检测 MediaType。然后我想根据 MediaType 开始一个动作。
因此,如果 MediaType 来自 XML 类型,我想做一些操作,如果它是压缩文件,我想启动其他操作。
我的问题是有很多 XML 类型,那么如何使用 MediaType 检查它是否是 XML?
这是我之前(在 Tika 之前)的实现:
if (contentType.contains("text/xml") ||
contentType.contains("application/xml") ||
contentType.contains("application/x-xml") ||
contentType.contains("application/atom+xml") ||
contentType.contains("application/rss+xml")) {
processXML();
}
else if (contentType.contains("application/gzip") ||
contentType.contains("application/x-gzip") ||
contentType.contains("application/x-gunzip") ||
contentType.contains("application/gzipped") ||
contentType.contains("application/gzip-compressed") ||
contentType.contains("application/x-compress") ||
contentType.contains("gzip/document") ||
contentType.contains("application/octet-stream")) {
processGzip();
}
Run Code Online (Sandbox Code Playgroud)
我想将其切换为使用 Tika,如下所示:
MediaType mediaType = MediaType.parse(contentType);
if (mediaType == APPLICATION_XML) {
return processXml();
} else if (mediaType == APPLICATION_ZIP || …Run Code Online (Sandbox Code Playgroud)