Package org.apache.poi.xssf.usermodel

Examples of org.apache.poi.xssf.usermodel.XSSFSheet


    public void getContent() throws Exception {

        int numOfSheets = wb.getNumberOfSheets();
        assertTrue( numOfSheets>=1 );

        XSSFSheet sheet = wb.getSheetAt(0);
        assertNotNull(sheet);

        sheet.getRelations();
        System.out.printf( "sheet [%s]\n", sheet.toString());

        int i=0;
        for( Row r : sheet ) {

            XSSFRow rr = (XSSFRow) r;
View Full Code Here


      else
      {
        _wb=workbook;
            for ( int i = 0; i < _wb.getNumberOfSheets(); i++ )
            {
                XSSFSheet sheet = _wb.getSheetAt( i );
                createAndRegisterSXSSFSheet( sheet );
            }
      }
    }
View Full Code Here

        }
    }

    XSSFSheet getXSSFSheet(SXSSFSheet sheet)
    {
        XSSFSheet result=_sxFromXHash.get(sheet);
        assert result!=null;
        return result;
    }
View Full Code Here

                while (en.hasMoreElements())
                {
                    ZipEntry ze = en.nextElement();
                    zos.putNextEntry(new ZipEntry(ze.getName()));
                    InputStream is = zip.getInputStream(ze);
                    XSSFSheet xSheet=getSheetFromZipEntryName(ze.getName());
                    if(xSheet!=null)
                    {
                        SXSSFSheet sxSheet=getSXSSFSheet(xSheet);
                        InputStream xis = sxSheet.getWorksheetXMLInputStream();
                        try
View Full Code Here

     *
     * @param index of the sheet to remove (0-based)
     */
    public void removeSheetAt(int index)
    {
        XSSFSheet xSheet=_wb.getSheetAt(index);
        _wb.removeSheetAt(index);
        deregisterSheetMapping(xSheet);
    }
View Full Code Here

   */
  public String getText() {
    StringBuffer text = new StringBuffer();

    for(int i=0; i<workbook.getNumberOfSheets(); i++) {
      XSSFSheet sheet = workbook.getSheetAt(i);
      if(includeSheetNames) {
        text.append(workbook.getSheetName(i)).append("\n");
      }

      // Header(s), if present
      if(includeHeadersFooters) {
        text.append(
            extractHeaderFooter(sheet.getFirstHeader())
        );
        text.append(
            extractHeaderFooter(sheet.getOddHeader())
        );
        text.append(
            extractHeaderFooter(sheet.getEvenHeader())
        );
      }

      // Rows and cells
      for (Object rawR : sheet) {
        Row row = (Row)rawR;
        for(Iterator<Cell> ri = row.cellIterator(); ri.hasNext();) {
          Cell cell = ri.next();

          // Is it a formula one?
          if(cell.getCellType() == Cell.CELL_TYPE_FORMULA && formulasNotResults) {
            text.append(cell.getCellFormula());
          } else if(cell.getCellType() == Cell.CELL_TYPE_STRING) {
            text.append(cell.getRichStringCellValue().getString());
          } else {
            XSSFCell xc = (XSSFCell)cell;
            text.append(xc.getRawValue());
          }

          // Output the comment, if requested and exists
            Comment comment = cell.getCellComment();
          if(includeCellComments && comment != null) {
              // Replace any newlines with spaces, otherwise it
              //  breaks the output
              String commentText = comment.getString().getString().replace('\n', ' ');
              text.append(" Comment by ").append(comment.getAuthor()).append(": ").append(commentText);
          }

          if(ri.hasNext())
            text.append("\t");
        }
        text.append("\n");
      }

      // Finally footer(s), if present
      if(includeHeadersFooters) {
        text.append(
            extractHeaderFooter(sheet.getFirstFooter())
        );
        text.append(
            extractHeaderFooter(sheet.getOddFooter())
        );
        text.append(
            extractHeaderFooter(sheet.getEvenFooter())
        );
      }
    }

    return text.toString();
View Full Code Here

        assertTrue(newCol.getHidden());
    }

    public void testGetOrCreateColumn() {
        XSSFWorkbook workbook = new XSSFWorkbook();
        XSSFSheet sheet = workbook.createSheet("Sheet 1");
        ColumnHelper columnHelper = sheet.getColumnHelper();

        // Check POI 0 based, OOXML 1 based
        CTCol col = columnHelper.getOrCreateColumn1Based(3, false);
        assertNotNull(col);
        assertNull(columnHelper.getColumn(1, false));
View Full Code Here

        assertNull(columnHelper.getColumn(30, false));
    }

    public void testGetSetColDefaultStyle() {
        XSSFWorkbook workbook = new XSSFWorkbook();
        XSSFSheet sheet = workbook.createSheet();
        CTWorksheet ctWorksheet = sheet.getCTWorksheet();
        ColumnHelper columnHelper = sheet.getColumnHelper();

        // POI column 3, OOXML column 4
        CTCol col = columnHelper.getOrCreateColumn1Based(4, false);

        assertNotNull(col);
View Full Code Here

            formatter = new DataFormatter(locale);
        }

        StringBuffer text = new StringBuffer();
        for(int i=0; i<workbook.getNumberOfSheets(); i++) {
            XSSFSheet sheet = workbook.getSheetAt(i);
            if(includeSheetNames) {
                text.append(workbook.getSheetName(i)).append("\n");
            }

            // Header(s), if present
            if(includeHeadersFooters) {
                text.append(
                        extractHeaderFooter(sheet.getFirstHeader())
                        );
                text.append(
                        extractHeaderFooter(sheet.getOddHeader())
                        );
                text.append(
                        extractHeaderFooter(sheet.getEvenHeader())
                        );
            }

            // Rows and cells
            for (Object rawR : sheet) {
                Row row = (Row)rawR;
                for(Iterator<Cell> ri = row.cellIterator(); ri.hasNext();) {
                    Cell cell = ri.next();

                    // Is it a formula one?
                    if(cell.getCellType() == Cell.CELL_TYPE_FORMULA) {
                        if (formulasNotResults) {
                            text.append(cell.getCellFormula());
                        } else {
                            if (cell.getCachedFormulaResultType() == Cell.CELL_TYPE_STRING) {
                                handleStringCell(text, cell);
                            } else {
                                handleNonStringCell(text, cell, formatter);
                            }
                        }
                    } else if(cell.getCellType() == Cell.CELL_TYPE_STRING) {
                        handleStringCell(text, cell);
                    } else {
                        handleNonStringCell(text, cell, formatter);
                    }

                    // Output the comment, if requested and exists
                    Comment comment = cell.getCellComment();
                    if(includeCellComments && comment != null) {
                        // Replace any newlines with spaces, otherwise it
                        //  breaks the output
                        String commentText = comment.getString().getString().replace('\n', ' ');
                        text.append(" Comment by ").append(comment.getAuthor()).append(": ").append(commentText);
                    }

                    if(ri.hasNext())
                        text.append("\t");
                }
                text.append("\n");
            }

            // Finally footer(s), if present
            if(includeHeadersFooters) {
                text.append(
                        extractHeaderFooter(sheet.getFirstFooter())
                        );
                text.append(
                        extractHeaderFooter(sheet.getOddFooter())
                        );
                text.append(
                        extractHeaderFooter(sheet.getEvenFooter())
                        );
            }
        }

        return text.toString();
View Full Code Here

    }
    workbook.write(outputStream);
  }

  private void handleSheet(final XSSFWorkbook workbook, final Sheet sheet) {
    XSSFSheet s = workbook.createSheet(sheet.getName());
    s.setDisplayGridlines(sheet.isDisplayGridLines());
    s.setPrintGridlines(sheet.isPrintGridLines());
    s.setFitToPage(sheet.isFitToPage());
    s.setHorizontallyCenter(sheet.isHorizontallyCenter());
    s.setAutobreaks(true);

    // Print Config
    XSSFPrintSetup printSetup = s.getPrintSetup();
    printSetup.setLandscape(sheet.isLandscape());
    printSetup.setFitHeight((short) 1);
    printSetup.setFitWidth((short) 1);

    // Rows
    int rowNum = 0;

    for (Row row : sheet.getRows()) {
      this.handleRow(workbook, s, row, rowNum++);
    }

    // Widths
    for (Entry<Integer, Integer> entry : sheet.getColumnsWith().entrySet()) {
      int column = entry.getKey().intValue();
      int value = entry.getValue().intValue();
      s.setColumnWidth(column, 256 * value);
    }

    // Merge
    for (CellMerge<?, ?> cellMerge : sheet.getMerges()) {
      IntegerCellMerge integerCellMerge = (IntegerCellMerge) cellMerge;
      int firstRow = integerCellMerge.getFirstRow().intValue();
      int lastRow = integerCellMerge.getLastRow().intValue();
      int firstColumn = integerCellMerge.getFirstColumn().intValue();
      int lastColumn = integerCellMerge.getLastColumn().intValue();
      CellRangeAddress address = new CellRangeAddress(firstRow, lastRow, firstColumn, lastColumn);
      s.addMergedRegion(address);
    }

    // Images
    for (Image image : sheet.getImages()) {
      byte[] bytes = image.getBytes();
      ImageType imageType = image.getType();
      int type = -1;

      switch (imageType) {
        case JPEG:
          type = Workbook.PICTURE_TYPE_JPEG;
          break;
        case PNG:
          type = Workbook.PICTURE_TYPE_PNG;
          break;
        default:
          break;
      }

      if (type == -1) {
        throw new DocumentException("Unsupported image type " + imageType);
      }

      short row = (short) image.getRow();
      short column = (short) image.getColumn();
      //int width = Math.abs(image.getWidth());
      //int height = Math.abs(image.getHeight());

      int index = workbook.addPicture(bytes, type);
      XSSFClientAnchor anchor = new XSSFClientAnchor(0, 0, 0, 0, row, column, row, column);

      XSSFDrawing drawing = s.createDrawingPatriarch();
      XSSFPicture picture = drawing.createPicture(anchor, index);

      picture.resize();

      // if ((width != 0) && (height != 0)) {
View Full Code Here

TOP

Related Classes of org.apache.poi.xssf.usermodel.XSSFSheet

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.