feiyu02
2024-09-25 0516cba27e632f20efac2752787f38f0c87baafa
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
package cn.flightfeather.supervision.docx4j.demo;
 
import org.docx4j.openpackaging.exceptions.Docx4JException;
import org.docx4j.openpackaging.packages.SpreadsheetMLPackage;
import org.docx4j.openpackaging.parts.SpreadsheetML.WorkbookPart;
import org.docx4j.openpackaging.parts.SpreadsheetML.WorksheetPart;
import org.xlsx4j.org.apache.poi.ss.usermodel.DataFormatter;
import org.xlsx4j.sml.Cell;
import org.xlsx4j.sml.Row;
import org.xlsx4j.sml.SheetData;
import org.xlsx4j.sml.Worksheet;
 
public class Teddd {
    public static void main(String[] args) throws Exception {
 
        String inputfilepath = System.getProperty("user.dir") + "/content.xlsx";
 
        // Open a document from the file system
 
        SpreadsheetMLPackage xlsxPkg = SpreadsheetMLPackage.load(new java.io.File(inputfilepath));
        WorkbookPart workbookPart = xlsxPkg.getWorkbookPart();
        WorksheetPart sheet = workbookPart.getWorksheet(0);
 
        DataFormatter formatter = new DataFormatter();
 
        // Now lets print the cell content
        displayContent(sheet, formatter);
    }
 
 
    private static void displayContent(WorksheetPart sheet, DataFormatter formatter) throws Docx4JException {
 
        Worksheet ws = sheet.getContents();
        SheetData data = ws.getSheetData();
 
        for (Row r : data.getRow() ) {
            System.out.println("row " + r.getR() );
 
            for (Cell c : r.getC() ) {
 
//                CellReference cellRef = new CellReference(row.getRowNum(), cell.getColumnIndex());
//                System.out.print(cellRef.formatAsString());
//                System.out.print(" - ");
 
                // get the text that appears in the cell by getting the cell value and applying any data formats (Date, 0.00, 1.23e9, $1.23, etc)
                String text = formatter.formatCellValue(c);
                System.out.println(c.getR() + " contains " + text);
 
            }
        }
 
    }
 
 
 
}