我现在正在为用 Java 编写的电子书阅读器工作。主要文件类型是fb2
基于 XML 的类型。
这些书籍中的图像以长文本行的形式存储在<binary>
标签中(至少它看起来像文本编辑器中的文本)。
如何在 Java 中将此文本转换为实际图片?对于使用 XML,我使用的是 JDOM2 库。
我尝试过的不会产生有效的图片(jpeg 文件):
private void saveCover(Object book) {
// Necessary cast to process with book
Document doc = (Document) book;
// Document root and namespace
Element root = doc.getRootElement();
Namespace ns = root.getNamespace();
Element binaryEl = root.getChild("binary", ns);
String binaryText = binaryEl.getText();
File cover = new File(tempFolderPath + "cover.jpeg");
try (
FileOutputStream fileOut = new FileOutputStream(cover);
BufferedOutputStream bufferOut = new BufferedOutputStream(
fileOut);) {
bufferOut.write(binaryText.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
}