Lire un tableau word en java
Salut à tous,
Pour être plus précis que le titre je voudrais avoir la main sur les cellules d'un tableau word, afin de pourvoir gérer mon affichage dans n'importe quel composant.
J'ai trouvé un code à peu pré correct mais je pense que ce n'est pas du java 6 car il y a plusieurs méthode que la classe Range ne reconnait pas.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
package word;
import java.io.FileInputStream;
import org.apache.poi.sl.usermodel.TableCell;
import org.apache.poi.wp.usermodel.Paragraph;
import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.xmlbeans.StringEnumAbstractBase.Table;
import org.w3c.dom.ranges.Range;
public class WordExtractor
{
public static void main(String[] args) throws Exception
{
XWPFDocument docx = new XWPFDocument(new FileInputStream(
"M:\\Create_table.docx"));
// using XWPFWordExtractor Class
XWPFWordExtractor we = new XWPFWordExtractor(docx);
Range range = docx.getRange();
for (int i=0; i<range.getEndOffset()numParagraphs(); i++){
Paragraph tablePar = range.getParagraph(i);
if (tablePar.isInTable()) {
Table table = range.getTable(tablePar);
for (int rowIdx=0; rowIdx<table.numRows(); rowIdx++) {
for (int colIdx=0; colIdx<row.numCells(); colIdx++) {
TableCell cell = row.getCell(colIdx);
System.out.println("column="+cell.getParagraph(0).text());
}
}
}
}
we.close();
docx.close();
}
} |
MERCI d'avance :) :)