Я пытаюсь извлечь метаданные, используя apache tika, а затем помещая их в HashMap. Но мой код get - это только ключ, а не значение этого ключа. Например. Он хранит только заголовок (как ключ), но не егозначение, таким же образом он хранит ключевые слова (как ключ), но не его значение ..
И если я пытаюсь увидеть, что содержит md , он показывает это: -
Description= title=Wireless Technology & Innovation | Mobile Technology Content-Encoding=UTF-8 Content-Type=text/html; charset=utf-8 Keywords= google-site-verification=AzhlXdqBSdUCRPJRY1evCtp2Ko5r9kxB_f81WffACUc
private Map<String, String> metaData;
try {
Metadata md = new Metadata();
htmlStream = new ByteArrayInputStream(htmlContent.getBytes());
String parsedText = tika.parseToString(htmlStream, md);
//very unlikely to happen
if (text == null){
text = parsedText.trim();
}
processMetaData(md);
} catch (Exception e) {
e.printStackTrace();
} finally {
IOUtils.closeQuietly(htmlStream);
}
private void processMetaData(Metadata md){
if ((getMetaData() == null) || (!getMetaData().isEmpty())) {
setMetaData(new HashMap<String, String>());
}
for (String name : md.names()){
//This below line is not working I guess, it stores only the key.. not the value of that particular key..
getMetaData().put(name.toLowerCase(), md.get(name));
}
}
public Map<String, String> getMetaData() {
return metaData;
}
public void setMetaData(Map<String, String> metaData) {
this.metaData = metaData;
}
Любая помощь будет оценена ..