Search in sources :

Example 6 with XSSFMap

use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.

the class TestXSSFExportToXML method testXmlExportIgnoresEmptyCells_Bugzilla_55924.

public void testXmlExportIgnoresEmptyCells_Bugzilla_55924() throws Exception {
    XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("55924.xlsx");
    boolean found = false;
    for (POIXMLDocumentPart p : wb.getRelations()) {
        if (!(p instanceof MapInfo)) {
            continue;
        }
        MapInfo mapInfo = (MapInfo) p;
        XSSFMap map = mapInfo.getXSSFMapById(1);
        assertNotNull("XSSFMap is null", map);
        XSSFExportToXml exporter = new XSSFExportToXml(map);
        ByteArrayOutputStream os = new ByteArrayOutputStream();
        exporter.exportToXML(os, true);
        String xmlData = os.toString("UTF-8");
        assertNotNull(xmlData);
        assertFalse(xmlData.equals(""));
        String a = xmlData.split("<A>")[1].split("</A>")[0].trim();
        String euro = a.split("<EUR>")[1].split("</EUR>")[0].trim();
        assertEquals("1", euro);
        parseXML(xmlData);
        found = true;
    }
    assertTrue(found);
}
Also used : POIXMLDocumentPart(org.apache.poi.POIXMLDocumentPart) XSSFMap(org.apache.poi.xssf.usermodel.XSSFMap) XSSFWorkbook(org.apache.poi.xssf.usermodel.XSSFWorkbook) MapInfo(org.apache.poi.xssf.model.MapInfo) ByteArrayOutputStream(java.io.ByteArrayOutputStream)

Example 7 with XSSFMap

use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.

the class TestXSSFExportToXML method testFormulaCells_Bugzilla_55927.

public void testFormulaCells_Bugzilla_55927() throws Exception {
    XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("55927.xlsx");
    boolean found = false;
    for (POIXMLDocumentPart p : wb.getRelations()) {
        if (!(p instanceof MapInfo)) {
            continue;
        }
        MapInfo mapInfo = (MapInfo) p;
        XSSFMap map = mapInfo.getXSSFMapById(1);
        assertNotNull("XSSFMap is null", map);
        XSSFExportToXml exporter = new XSSFExportToXml(map);
        ByteArrayOutputStream os = new ByteArrayOutputStream();
        exporter.exportToXML(os, true);
        String xmlData = os.toString("UTF-8");
        assertNotNull(xmlData);
        assertFalse(xmlData.equals(""));
        assertEquals("2012-01-13", xmlData.split("<DATE>")[1].split("</DATE>")[0].trim());
        assertEquals("2012-02-16", xmlData.split("<FORMULA_DATE>")[1].split("</FORMULA_DATE>")[0].trim());
        parseXML(xmlData);
        found = true;
    }
    assertTrue(found);
}
Also used : POIXMLDocumentPart(org.apache.poi.POIXMLDocumentPart) XSSFMap(org.apache.poi.xssf.usermodel.XSSFMap) XSSFWorkbook(org.apache.poi.xssf.usermodel.XSSFWorkbook) MapInfo(org.apache.poi.xssf.model.MapInfo) ByteArrayOutputStream(java.io.ByteArrayOutputStream)

Example 8 with XSSFMap

use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.

the class TestXSSFExportToXML method testBug59026.

public void testBug59026() throws Exception {
    XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("59026.xlsx");
    Collection<XSSFMap> mappings = wb.getCustomXMLMappings();
    assertTrue(mappings.size() > 0);
    for (XSSFMap map : mappings) {
        XSSFExportToXml exporter = new XSSFExportToXml(map);
        ByteArrayOutputStream os = new ByteArrayOutputStream();
        exporter.exportToXML(os, false);
        assertNotNull(os.toString("UTF-8"));
    }
}
Also used : XSSFMap(org.apache.poi.xssf.usermodel.XSSFMap) XSSFWorkbook(org.apache.poi.xssf.usermodel.XSSFWorkbook) ByteArrayOutputStream(java.io.ByteArrayOutputStream)

Example 9 with XSSFMap

use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.

the class TestXSSFImportFromXML method testOptionalFields_Bugzilla_57890.

@Test
public void testOptionalFields_Bugzilla_57890() throws IOException, ParseException, XPathExpressionException, SAXException {
    XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("57890.xlsx");
    String testXML = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>" + "<TestInfoRoot>" + "<TestData>" + "<Int>" + Integer.MIN_VALUE + "</Int>" + "<UnsignedInt>12345</UnsignedInt>" + "<double>1.0000123</double>" + "<Date>1991-03-14</Date>" + "</TestData>" + "</TestInfoRoot>";
    XSSFMap map = wb.getMapInfo().getXSSFMapByName("TestInfoRoot_Map");
    assertNotNull(map);
    XSSFImportFromXML importer = new XSSFImportFromXML(map);
    importer.importFromXML(testXML);
    XSSFSheet sheet = wb.getSheetAt(0);
    XSSFRow rowHeadings = sheet.getRow(0);
    XSSFRow rowData = sheet.getRow(1);
    assertEquals("Date", rowHeadings.getCell(0).getStringCellValue());
    Date date = new SimpleDateFormat("yyyy-MM-dd", DateFormatSymbols.getInstance(Locale.ROOT)).parse("1991-3-14");
    assertEquals(date, rowData.getCell(0).getDateCellValue());
    assertEquals("Amount Int", rowHeadings.getCell(1).getStringCellValue());
    assertEquals(new Double(Integer.MIN_VALUE), rowData.getCell(1).getNumericCellValue(), 0);
    assertEquals("Amount Double", rowHeadings.getCell(2).getStringCellValue());
    assertEquals(1.0000123, rowData.getCell(2).getNumericCellValue(), 0);
    assertEquals("Amount UnsignedInt", rowHeadings.getCell(3).getStringCellValue());
    assertEquals(new Double(12345), rowData.getCell(3).getNumericCellValue(), 0);
    wb.close();
}
Also used : XSSFSheet(org.apache.poi.xssf.usermodel.XSSFSheet) XSSFRow(org.apache.poi.xssf.usermodel.XSSFRow) XSSFMap(org.apache.poi.xssf.usermodel.XSSFMap) XSSFWorkbook(org.apache.poi.xssf.usermodel.XSSFWorkbook) SimpleDateFormat(java.text.SimpleDateFormat) Date(java.util.Date) Test(org.junit.Test)

Example 10 with XSSFMap

use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.

the class TestXSSFExportToXML method testExportToXML.

public void testExportToXML() throws Exception {
    XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("CustomXMLMappings.xlsx");
    boolean found = false;
    for (POIXMLDocumentPart p : wb.getRelations()) {
        if (!(p instanceof MapInfo)) {
            continue;
        }
        MapInfo mapInfo = (MapInfo) p;
        XSSFMap map = mapInfo.getXSSFMapById(1);
        XSSFExportToXml exporter = new XSSFExportToXml(map);
        ByteArrayOutputStream os = new ByteArrayOutputStream();
        exporter.exportToXML(os, true);
        String xml = os.toString("UTF-8");
        assertNotNull(xml);
        assertFalse(xml.equals(""));
        String docente = xml.split("<DOCENTE>")[1].split("</DOCENTE>")[0].trim();
        String nome = xml.split("<NOME>")[1].split("</NOME>")[0].trim();
        String tutor = xml.split("<TUTOR>")[1].split("</TUTOR>")[0].trim();
        String cdl = xml.split("<CDL>")[1].split("</CDL>")[0].trim();
        String durata = xml.split("<DURATA>")[1].split("</DURATA>")[0].trim();
        String argomento = xml.split("<ARGOMENTO>")[1].split("</ARGOMENTO>")[0].trim();
        String progetto = xml.split("<PROGETTO>")[1].split("</PROGETTO>")[0].trim();
        String crediti = xml.split("<CREDITI>")[1].split("</CREDITI>")[0].trim();
        assertEquals("ro", docente);
        assertEquals("ro", nome);
        assertEquals("ds", tutor);
        assertEquals("gs", cdl);
        assertEquals("g", durata);
        assertEquals("gvvv", argomento);
        assertEquals("aaaa", progetto);
        assertEquals("aa", crediti);
        parseXML(xml);
        found = true;
    }
    assertTrue(found);
}
Also used : POIXMLDocumentPart(org.apache.poi.POIXMLDocumentPart) XSSFMap(org.apache.poi.xssf.usermodel.XSSFMap) XSSFWorkbook(org.apache.poi.xssf.usermodel.XSSFWorkbook) MapInfo(org.apache.poi.xssf.model.MapInfo) ByteArrayOutputStream(java.io.ByteArrayOutputStream)

Aggregations

XSSFMap (org.apache.poi.xssf.usermodel.XSSFMap)24 XSSFWorkbook (org.apache.poi.xssf.usermodel.XSSFWorkbook)22 ByteArrayOutputStream (java.io.ByteArrayOutputStream)15 POIXMLDocumentPart (org.apache.poi.POIXMLDocumentPart)14 MapInfo (org.apache.poi.xssf.model.MapInfo)13 XSSFSheet (org.apache.poi.xssf.usermodel.XSSFSheet)6 Test (org.junit.Test)5 XSSFRow (org.apache.poi.xssf.usermodel.XSSFRow)3 Date (java.util.Date)2 XSSFExportToXml (org.apache.poi.xssf.extractor.XSSFExportToXml)2 IOException (java.io.IOException)1 SimpleDateFormat (java.text.SimpleDateFormat)1 Matcher (java.util.regex.Matcher)1 Pattern (java.util.regex.Pattern)1 OPCPackage (org.apache.poi.openxml4j.opc.OPCPackage)1 Cell (org.apache.poi.ss.usermodel.Cell)1 Row (org.apache.poi.ss.usermodel.Row)1 Sheet (org.apache.poi.ss.usermodel.Sheet)1 XmlException (org.apache.xmlbeans.XmlException)1 CTMap (org.openxmlformats.schemas.spreadsheetml.x2006.main.CTMap)1