Преобразование и OPC (Open Packaging Convention) файл в плоский XML-файл в JAVA
Поэтому я пытаюсь получить XML-версию OPC-документа в виде простого файла.
Я использую OPCPackage из org.apache.poi.openxml4j
В C++ у вас есть вызов, который создает плоский файл XML из этого сжатого файла.
Кто-нибудь знает, как это сделать в Java?
Также было бы здорово прочитать все, что связано с OPC и Java.
большое спасибо
ура
ОБНОВЛЕНИЕ: связано с комментарием, который я сделал, чтобы только ответить...
код
// imports
import org.docx4j.convert.out.flatOpcXml.FlatOpcXmlCreator;
import org.docx4j.openpackaging.packages.WordprocessingMLPackage;
// code snippet
WordprocessingMLPackage wmlPkg = null;
try
{
wmlPkg = WordprocessingMLPackage.load(inFile);
}
catch (Docx4JException ex)
{
//...
}
FlatOpcXmlCreator flatOpcWorker = new FlatOpcXmlCreator((wmlPkg));
flatOpcWorker.marshal(new FileOutputStream(tmpFlatFile.getAbsolutePath()));
Так вот фрагмент кода, и это приводит к ошибке компиляции:
не удается найти символ символа: маршал метода (java.io.FileOutputStream) расположение: переменная flatOpcWorker типа org.docx4j.convert.out.flatOpcXml.FlatOpcXmlCreator
1 ответ
Мой проект docx4j имеет FlatOpcXmlCreator, который делает это; см. образец ConvertOutFlatOpenPackage
Если вы хотите использовать его с POI (который использует XML Beans, а не JAXB), я думаю, вы могли бы его портировать. Оба проекта являются ASL, и оба выполняют часть OPC, основанную на OpenXML4J.