Ну, у меня есть Word с текстом презентации (основной шаг) и таблица с 3 столбцами, первый и второй не важны, это текстовый столбец, но третий завершен с некоторыми картинками.Цель состоит в том, чтобы извлечь изображения, содержащиеся в третьем столбце, чтобы сохранить их в базе данных (в формате BLOB).Я пытаюсь решить эту проблему с Apache POI, потому что я уже использую его для других столбцов, где я получаю текст.Ниже мой код уже реализован:
package wordtosql;
import java.awt.image.BufferedImage;
import java.io.*;
import java.util.List;
import javax.imageio.IIOException;
import javax.imageio.ImageIO;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.*;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileInputStream;
public class ReadDocxTableFiles {
public static void main(String[] args) throws FileNotFoundException, IOException {
try {
FileInputStream fis = new FileInputStream("FGI-38562 Felsökning låg svetsstyrka CF_UB.docx");
XWPFDocument docx = new XWPFDocument(fis);
List<XWPFTable> table = docx.getTables();
for (XWPFTable xwpfTable : table) {
List<XWPFTableRow> row = xwpfTable.getRows();
for (XWPFTableRow xwpfTableRow : row) {
List<XWPFTableCell> cell = xwpfTableRow.getTableCells();
for (XWPFTableCell xwpfTableCell : cell) {
if (xwpfTableCell != null) {
System.out.println(xwpfTableCell.getText());
}
}
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} `
Это слово создано сторонним программным обеспечением, из которого я могу использовать только слова, которые он производит.Поэтому все эти документы Word имеют одинаковый формат.