List of usage examples for org.apache.poi.hssf.usermodel HSSFRow cellIterator
@Override
public Iterator<Cell> cellIterator()
From source file:com.duroty.lucene.parser.MSExcelParser.java
License:Open Source License
/** * DOCUMENT ME!/*from w w w .j ava 2 s. c o m*/ * * @return DOCUMENT ME! * * @throws ParserException DOCUMENT ME! */ private String getContents() throws ParserException { String contents = ""; try { POIFSFileSystem fs = new POIFSFileSystem(input); HSSFWorkbook workbook = new HSSFWorkbook(fs); StringBuffer buffer = new StringBuffer(); for (int i = 0; i < workbook.getNumberOfSheets(); i++) { HSSFSheet sheet = workbook.getSheetAt(i); Iterator rows = sheet.rowIterator(); while (rows.hasNext()) { HSSFRow row = (HSSFRow) rows.next(); Iterator cells = row.cellIterator(); while (cells.hasNext()) { HSSFCell cell = (HSSFCell) cells.next(); switch (cell.getCellType()) { case HSSFCell.CELL_TYPE_NUMERIC: String num = Double.toString(cell.getNumericCellValue()).trim(); if (num.length() > 0) { buffer.append(num + " "); } break; case HSSFCell.CELL_TYPE_STRING: String text = cell.getStringCellValue().trim(); if (text.length() > 0) { buffer.append(text + " "); } break; } } buffer.append("\n"); /*if (sleep > 0) { try { Thread.sleep(sleep); } catch (Exception ex) { } }*/ } } contents = buffer.toString(); } catch (Exception ex) { throw new ParserException(ex); } return contents; }
From source file:com.elbeesee.poink.transreptor.HSSFRowToXML.java
License:Open Source License
public void onTransrept(INKFRequestContext aContext) throws Exception { IHSSFRowRepresentation aIHSSFRowRepresentation = (IHSSFRowRepresentation) aContext .sourcePrimary(IHSSFRowRepresentation.class); HSSFRow vRow = aIHSSFRowRepresentation.getRowReadOnly(); String vSheetName = vRow.getSheet().getSheetName(); StringBuilder vRowXML = new StringBuilder(); vRowXML.append("<row rowIndex=\""); vRowXML.append(vRow.getRowNum());/* w w w .j av a 2 s .c om*/ vRowXML.append("\" sheetIndex=\""); vRowXML.append(vRow.getSheet().getWorkbook().getSheetIndex(vSheetName)); vRowXML.append("\">"); // do the cells int i = 0; for (Iterator<Cell> vCellIterator = vRow.cellIterator(); vCellIterator.hasNext();) { HSSFCell vHSSFCell = (HSSFCell) vCellIterator.next(); IHSSFCellRepresentation vHSSFCellRepresentation = new HSSFCellImplementation(vHSSFCell); String vCellXML = aContext.transrept(vHSSFCellRepresentation, String.class); vRowXML.append(vCellXML); i = i + 1; } // vRowXML.append("</row>"); INKFResponse vResponse = aContext.createResponseFrom(vRowXML.toString()); vResponse.setExpiry(INKFResponse.EXPIRY_DEPENDENT); }
From source file:com.essa.main.ReadExcel.java
public static void main(String[] args) { try {/*from w w w .j a va2 s . co m*/ InputStream input = new BufferedInputStream(new FileInputStream("sample.xls")); POIFSFileSystem fs = new POIFSFileSystem(input); HSSFWorkbook wb = new HSSFWorkbook(fs); HSSFSheet sheet = wb.getSheetAt(0); Iterator rows = sheet.rowIterator(); while (rows.hasNext()) { HSSFRow row = (HSSFRow) rows.next(); System.out.println("\n"); Iterator cells = row.cellIterator(); while (cells.hasNext()) { HSSFCell cell = (HSSFCell) cells.next(); if (HSSFCell.CELL_TYPE_NUMERIC == cell.getCellType()) System.out.print(cell.getNumericCellValue() + " "); else if (HSSFCell.CELL_TYPE_STRING == cell.getCellType()) System.out.print(cell.getStringCellValue() + " "); else if (HSSFCell.CELL_TYPE_BOOLEAN == cell.getCellType()) System.out.print(cell.getBooleanCellValue() + " "); else if (HSSFCell.CELL_TYPE_BLANK == cell.getCellType()) System.out.print("BLANK "); else System.out.print("Unknown cell type"); } } } catch (IOException ex) { ex.printStackTrace(); } }
From source file:com.ferid.app.classroom.edit.EditStudentActivity.java
License:Apache License
/** * Import students form excel//from w w w . j a va2 s . com * @param fileName Excel file name */ private void readXlsFile(String fileName) { ArrayList<String> studentsList = new ArrayList<>(); progressDialog = ProgressDialog.show(this, getString(R.string.wait), getString(R.string.ongoing), true, false); try { // Creating Input Stream File file = new File(fileName); FileInputStream fileInputStream = new FileInputStream(file); // Create a POIFSFileSystem object POIFSFileSystem poifsFileSystem = new POIFSFileSystem(fileInputStream); // Create a workbook using the File System HSSFWorkbook hssfWorkbook = new HSSFWorkbook(poifsFileSystem); // Get the first sheet from workbook HSSFSheet hssfSheet = hssfWorkbook.getSheetAt(0); // Iterate through the cells Iterator rowIter = hssfSheet.rowIterator(); StringBuilder studentName; //full name while (rowIter.hasNext()) { studentName = new StringBuilder(""); HSSFRow hssfRow = (HSSFRow) rowIter.next(); Iterator cellIter = hssfRow.cellIterator(); while (cellIter.hasNext()) { HSSFCell currentCell = (HSSFCell) cellIter.next(); if (!currentCell.toString().trim().equals("")) { //put space in between name, surname, etc. if (studentName.toString().length() > 0) { studentName.append(" "); } studentName.append(currentCell.toString()); } } //add to list if (!studentName.toString().equals("")) { studentsList.add(studentName.toString()); } } } catch (Exception e) { progressDialog.dismiss(); excelFileError(); } if (!studentsList.isEmpty()) { new InsertMultipleStudents().execute(studentsList); } else { progressDialog.dismiss(); } }
From source file:com.frameworkset.platform.cms.searchmanager.extractors.CmsExtractorMsExcel.java
License:Open Source License
/** * Extracts the text from the Excel table content.<p> * //from ww w. j av a2s .c o m * @param in the document input stream * @return the extracted text * @throws IOException if something goes wring */ protected String extractTableContent(InputStream in) throws IOException { HSSFWorkbook excelWb = new HSSFWorkbook(in); StringBuffer result = new StringBuffer(4096); int numberOfSheets = excelWb.getNumberOfSheets(); for (int i = 0; i < numberOfSheets; i++) { HSSFSheet sheet = excelWb.getSheetAt(i); int numberOfRows = sheet.getPhysicalNumberOfRows(); if (numberOfRows > 0) { if (CmsStringUtil.isNotEmpty(excelWb.getSheetName(i))) { // append sheet name to content if (i > 0) { result.append("\n\n"); } result.append(excelWb.getSheetName(i).trim()); result.append(":\n\n"); } Iterator rowIt = sheet.rowIterator(); while (rowIt.hasNext()) { HSSFRow row = (HSSFRow) rowIt.next(); if (row != null) { boolean hasContent = false; Iterator it = row.cellIterator(); while (it.hasNext()) { HSSFCell cell = (HSSFCell) it.next(); String text = null; try { switch (cell.getCellType()) { case HSSFCell.CELL_TYPE_BLANK: case HSSFCell.CELL_TYPE_ERROR: // ignore all blank or error cells break; case HSSFCell.CELL_TYPE_NUMERIC: text = Double.toString(cell.getNumericCellValue()); break; case HSSFCell.CELL_TYPE_BOOLEAN: text = Boolean.toString(cell.getBooleanCellValue()); break; case HSSFCell.CELL_TYPE_STRING: default: text = cell.getStringCellValue(); break; } } catch (Exception e) { // ignore this cell } if (CmsStringUtil.isNotEmpty(text)) { result.append(text.trim()); result.append(' '); hasContent = true; } } if (hasContent) { // append a newline at the end of each row that has content result.append('\n'); } } } } } return result.toString(); }
From source file:com.gestec.modelo.controladores.ArchivosView.java
public void HandleFileUpload(FileUploadEvent event) throws IOException { uploadedFile = event.getFile();//from w w w. jav a 2 s . c o m InputStream file = uploadedFile.getInputstream(); HSSFWorkbook workbook = new HSSFWorkbook(file); HSSFSheet miHoja = workbook.getSheetAt(0); Iterator filas = miHoja.rowIterator(); this.datosTabla.clear(); while (filas.hasNext()) { HSSFRow nuevaFila = (HSSFRow) filas.next(); Iterator celdas = nuevaFila.cellIterator(); String[] addFila = new String[7]; int pos = 0; while (celdas.hasNext()) { addFila[pos] = celdas.next().toString(); pos++; } addFila[6] = "" + efl.ingresarEquipoExcel(addFila); this.datosTabla.add(addFila); } FacesMessage fm = new FacesMessage("Exito", event.getFile().getFileName() + " Fue subido"); FacesContext.getCurrentInstance().addMessage(null, fm); }
From source file:com.hl7.main.ImportDataFromXLStoXML.java
public void displayFromExcel(String xlsPath) { InputStream inputStream = null; try {/*w ww . ja v a 2 s .c o m*/ inputStream = new FileInputStream(xlsPath); } catch (FileNotFoundException e) { System.out.println("File not found in the specified path."); e.printStackTrace(); } POIFSFileSystem fileSystem = null; try { // Initializing the XML document DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.newDocument(); Element rootElement = document.createElement("categories"); document.appendChild(rootElement); fileSystem = new POIFSFileSystem(inputStream); HSSFWorkbook workBook = new HSSFWorkbook(fileSystem); Integer count = workBook.getNumberOfSheets(); ArrayList<ArrayList<String>> data = new ArrayList<ArrayList<String>>(); for (int i = 0; i < count; i++) { HSSFSheet sheet = workBook.getSheetAt(i); Iterator<?> rows = sheet.rowIterator(); while (rows.hasNext()) { HSSFRow row = (HSSFRow) rows.next(); Iterator<?> cells = row.cellIterator(); ArrayList<String> rowData = new ArrayList<String>(); while (cells.hasNext()) { HSSFCell cell = (HSSFCell) cells.next(); String richTextString = cell.getStringCellValue(); System.out.println("String: " + richTextString); rowData.add(richTextString); } // end while data.add(rowData); } // end while } int numOfProduct = data.size(); for (int i = 0; i < numOfProduct; i++) { Element productElement = document.createElement("categoryName"); rootElement.appendChild(productElement); int index = 0; for (String s : data.get(i)) { String headerString = data.get(0).get(index); if (data.get(0).get(index).equals("image link")) { headerString = "image_link"; } if (data.get(0).get(index).equals("product type")) { headerString = "product_type"; } Element headerElement = document.createElement(headerString); productElement.appendChild(headerElement); headerElement.appendChild(document.createTextNode(s)); index++; } } TransformerFactory tFactory = TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer(); // Add indentation to output transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); DOMSource source = new DOMSource(document); StreamResult result = new StreamResult(new File("products.xml")); // StreamResult result = new StreamResult(System.out); transformer.transform(source, result); } catch (IOException e) { System.out.println("IOException " + e.getMessage()); } catch (ParserConfigurationException e) { System.out.println("ParserConfigurationException " + e.getMessage()); } catch (TransformerConfigurationException e) { System.out.println("TransformerConfigurationException " + e.getMessage()); } catch (TransformerException e) { System.out.println("TransformerException " + e.getMessage()); } }
From source file:com.isotrol.impe3.idx.oc.extractors.ExtractorMsExcel.java
License:Open Source License
/** * Extracts the text from the Excel table content.<p> * /*from w w w.ja v a 2s .co m*/ * @param in the document input stream * @return the extracted text * @throws IOException if something goes wring * @deprecated */ protected String extractTableContent(InputStream in) throws IOException { HSSFWorkbook excelWb = new HSSFWorkbook(in); StringBuffer result = new StringBuffer(4096); int numberOfSheets = excelWb.getNumberOfSheets(); for (int i = 0; i < numberOfSheets; i++) { HSSFSheet sheet = excelWb.getSheetAt(i); int numberOfRows = sheet.getPhysicalNumberOfRows(); if (numberOfRows > 0) { if (excelWb.getSheetName(i) != null && !excelWb.getSheetName(i).trim().equals("")) { // append sheet name to content if (i > 0) { result.append("\n\n"); } result.append(excelWb.getSheetName(i).trim()); result.append(":\n\n"); } Iterator<?> rowIt = sheet.rowIterator(); while (rowIt.hasNext()) { HSSFRow row = (HSSFRow) rowIt.next(); if (row != null) { boolean hasContent = false; Iterator<?> it = row.cellIterator(); while (it.hasNext()) { HSSFCell cell = (HSSFCell) it.next(); String text = null; try { switch (cell.getCellType()) { case HSSFCell.CELL_TYPE_BLANK: case HSSFCell.CELL_TYPE_ERROR: // ignore all blank or error cells break; case HSSFCell.CELL_TYPE_NUMERIC: text = Double.toString(cell.getNumericCellValue()); break; case HSSFCell.CELL_TYPE_BOOLEAN: text = Boolean.toString(cell.getBooleanCellValue()); break; case HSSFCell.CELL_TYPE_STRING: default: text = cell.getStringCellValue(); break; } } catch (Exception e) { // ignore this cell } if ((text != null) && (text.length() != 0)) { result.append(text.trim()); result.append(' '); hasContent = true; } } if (hasContent) { // append a newline at the end of each row that has content result.append('\n'); } } } } } return result.toString(); }
From source file:com.jk.framework.util.ExcelUtil.java
License:Apache License
private static Hashtable<String, Integer> processHeaders(final String[] headers, final HSSFRow row) { final Hashtable<String, Integer> rowHeaderToIndex = new Hashtable<String, Integer>(); final Iterator<Cell> cells = row.cellIterator(); int index = 0; while (cells.hasNext()) { final Cell cell = cells.next(); final String headerName = getCellValue((HSSFCell) cell).toString(); rowHeaderToIndex.put(headerName, index++); }/*from ww w .java 2s. c o m*/ final Hashtable<String, Integer> customHeaderToIndex = new Hashtable<String, Integer>(); for (final String header : headers) { final Integer headerIndex = rowHeaderToIndex.get(header); if (headerIndex != null) { customHeaderToIndex.put(header, headerIndex); } } return customHeaderToIndex; }
From source file:com.liferay.util.poi.XLSTextStripper.java
License:Open Source License
public XLSTextStripper(FileInputStream fis) { try {// ww w . jav a 2 s . com StringBuffer sb = new StringBuffer(); HSSFWorkbook workbook = new HSSFWorkbook(fis); int numOfSheets = workbook.getNumberOfSheets(); for (int i = 0; i < numOfSheets; i++) { HSSFSheet sheet = workbook.getSheetAt(i); Iterator rowIterator = sheet.rowIterator(); while (rowIterator.hasNext()) { HSSFRow row = (HSSFRow) rowIterator.next(); Iterator cellIterator = row.cellIterator(); while (cellIterator.hasNext()) { HSSFCell cell = (HSSFCell) cellIterator.next(); String cellStringValue = null; if (cell.getCellType() == 4) { boolean booleanValue = cell.getBooleanCellValue(); cellStringValue = Boolean.toString(booleanValue); } else if (cell.getCellType() == 0) { double doubleValue = cell.getNumericCellValue(); cellStringValue = Double.toString(doubleValue); } else if (cell.getCellType() == 1) { cellStringValue = cell.getStringCellValue(); } if (cellStringValue != null) { sb.append(cellStringValue); sb.append("\t"); } } sb.append("\n"); } } _text = sb.toString(); } catch (Exception e) { Logger.error(this, e.getMessage(), e); } }