List of usage examples for org.apache.poi.xssf.usermodel XSSFRow getCell
@Override public XSSFCell getCell(int cellnum)
From source file:de.fionera.javamailer.dataProcessors.parseFilesForImport.java
/** * Gets a XLSX file and parse it//from ww w . ja va 2s .c om * @param file The XLSX File that you want to get parsed * @return A ArrayList where the first object is a Array containing the Data and the Second the Header */ public ArrayList<Object> parseXLSXFile(File file) { int index = -1; XSSFWorkbook workbook = null; try { try { FileInputStream inputStream = new FileInputStream(file); workbook = new XSSFWorkbook(inputStream); } catch (IOException ex) { ex.printStackTrace(); } assert workbook != null; String[] strings = new String[workbook.getNumberOfSheets()]; //get all sheet names from selected workbook for (int i = 0; i < strings.length; i++) { strings[i] = workbook.getSheetName(i); } JFrame frame = new JFrame("Input Dialog"); String selectedsheet = (String) JOptionPane.showInputDialog(frame, "Which worksheet you want to import ?", "Select Worksheet", JOptionPane.QUESTION_MESSAGE, null, strings, strings[0]); if (selectedsheet != null) { for (int i = 0; i < strings.length; i++) { if (workbook.getSheetName(i).equalsIgnoreCase(selectedsheet)) index = i; } XSSFSheet sheet = workbook.getSheetAt(index); XSSFRow row = sheet.getRow(0); if (row != null) { headers = new String[row.getLastCellNum()]; for (int i = 0; i < row.getLastCellNum(); i++) { headers[i] = row.getCell(i).toString(); } } data = new String[sheet.getLastRowNum()][]; for (int j = 1; j < sheet.getLastRowNum() + 1; j++) { row = sheet.getRow(j); int rowCount = row.getLastCellNum(); String[] dataRow = new String[rowCount]; for (int i = 0; i < rowCount; i++) { XSSFCell cell = row.getCell(i, org.apache.poi.ss.usermodel.Row.CREATE_NULL_AS_BLANK); dataRow[i] = cell.toString(); } data[j - 1] = dataRow; } } else { return null; } } catch (Exception e) { e.printStackTrace(); } ArrayList<Object> returnData = new ArrayList<>(); returnData.add(data); returnData.add(headers); return returnData; }
From source file:de.tuttas.servlets.DokuServlet.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods.//from ww w.ja v a2 s .co m * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String auth = request.getParameter("auth_token"); String service = request.getParameter("service_key"); Log.d("auth_token=" + auth); if (request.getParameter("cmd") == null || request.getParameter("idklasse") == null || request.getParameter("from") == null) { Log.d("Info zeigen"); response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { /* TODO output your page here. You may use following sample code. */ out.println("<!DOCTYPE html>"); out.println("<html>"); out.println("<head>"); out.println("<title>Doku Servlet Usage</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Doku Servlet @ " + request.getContextPath() + "</h1>"); out.println( "<a href='?cmd=Verlauf&idklasse=3608&from=2015-09-08&debug=" + Config.getInstance().debug + "' target='_pdf'>Usage: ?cmd=verlauf&idklasse=3608&from=2015-09-08</a>"); out.println("</body>"); out.println("</html>"); } } else { if (Config.getInstance().debug || service != null && auth != null && Authenticator.getInstance().isAuthTokenValid(auth)) { Log.d("ID Klasse = " + request.getParameter("idklasse")); Klasse kl = em.find(Klasse.class, Integer.parseInt(request.getParameter("idklasse"))); String cmd = request.getParameter("cmd"); String type = request.getParameter("type"); String sidSchuljahr = request.getParameter("idSchuljahr"); int idSchuljahr = -1; if (sidSchuljahr != null) { try { idSchuljahr = Integer.parseInt(sidSchuljahr); } catch (NumberFormatException nux) { } } String filter1 = request.getParameter("dokufilter1"); String filter2 = request.getParameter("dokufilter2"); int anwFilter1 = 0; int anwFilter2 = 0; if (request.getParameter("anwfilter1") != null) { anwFilter1 = Integer.parseInt(request.getParameter("anwfilter1")); } if (request.getParameter("anwfilter2") != null) { anwFilter2 = Integer.parseInt(request.getParameter("anwfilter2")); } Authenticator a = Authenticator.getInstance(); String me = a.getUser(auth); Log.d("Verlauf Filter1=" + filter1 + " Verlauf Filter2=" + filter2 + " me=" + me); Log.d("Anwesenheitsfilter 1 = " + anwFilter1 + " Filter2=" + anwFilter2); DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date parsedFrom = null; try { parsedFrom = (Date) dateFormat.parse(request.getParameter("from")); } catch (ParseException ex) { Logger.getLogger(DokuServlet.class.getName()).log(Level.SEVERE, null, ex); } Date parsedTo = null; if (request.getParameter("to") == null) { parsedTo = new java.sql.Date(System.currentTimeMillis()); } else { try { parsedTo = (Date) dateFormat.parse(request.getParameter("to")); } catch (ParseException ex) { Logger.getLogger(DokuServlet.class.getName()).log(Level.SEVERE, null, ex); } } Log.d("setze To auf " + new java.sql.Date(parsedTo.getTime())); Log.d("type=" + type + " cmd=" + cmd + " Klasse=" + kl.getKNAME()); if (type.compareTo("csv") == 0) { MyTableDataModel myModel = null; if (cmd.compareTo("Betriebe") == 0) { response.setContentType( "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); String fileName = cmd + "_" + kl.getKNAME() + "_" + new java.sql.Date(parsedTo.getTime()).toString() + ".xlsx"; fileName = URLEncoder.encode(fileName, "UTF-8"); String contentDisposition = "attachment; filename=\"" + fileName + "\"; filename*=UTF-8''" + fileName; response.addHeader("Content-Disposition", contentDisposition); myModel = getModelBetriebsliste(kl); XSSFWorkbook wb = ExcelUtil.readExcel( Config.getInstance().TEMPLATE_FILE_PATH + cmd + ".xlsx", new String[] { "Betriebe" }, myModel.getRows(), myModel.getCols()); wb = myModel.toExcel(wb, 0); wb.write(response.getOutputStream()); } else if (cmd.compareTo("Notenliste") == 0) { response.setContentType( "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); String fileName = cmd + "_" + kl.getKNAME() + "_" + new java.sql.Date(parsedTo.getTime()).toString() + ".xlsx"; fileName = URLEncoder.encode(fileName, "UTF-8"); String contentDisposition = "attachment; filename=\"" + fileName + "\"; filename*=UTF-8''" + fileName; response.addHeader("Content-Disposition", contentDisposition); myModel = getModelNotenliste(kl, idSchuljahr); XSSFWorkbook wb = ExcelUtil.readExcel( Config.getInstance().TEMPLATE_FILE_PATH + cmd + ".xlsx", new String[] { "Notenliste" }, myModel.getRows(), myModel.getCols()); wb = myModel.toExcel(wb, 0); wb.write(response.getOutputStream()); } else if (cmd.compareTo("Fehlzeiten") == 0) { response.setContentType( "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); String fileName = cmd + "_" + kl.getKNAME() + "_" + new java.sql.Date(parsedFrom.getTime()).toString() + "-" + new java.sql.Date(parsedTo.getTime()).toString() + ".xlsx"; fileName = URLEncoder.encode(fileName, "UTF-8"); String contentDisposition = "attachment; filename=\"" + fileName + "\"; filename*=UTF-8''" + fileName; response.addHeader("Content-Disposition", contentDisposition); myModel = getModelFehlzeiten(kl, parsedFrom, parsedTo); XSSFWorkbook wb = ExcelUtil.readExcel( Config.getInstance().TEMPLATE_FILE_PATH + cmd + ".xlsx", new String[] { "Fehlzeiten" }, myModel.getRows(), myModel.getCols()); wb = myModel.toExcel(wb, 0); wb.write(response.getOutputStream()); } else if (cmd.compareTo("Anwesenheit") == 0) { response.setContentType( "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); String fileName = cmd + "_" + kl.getKNAME() + "_" + new java.sql.Date(parsedFrom.getTime()).toString() + "-" + new java.sql.Date(parsedTo.getTime()).toString() + ".xlsx"; fileName = URLEncoder.encode(fileName, "UTF-8"); String contentDisposition = "attachment; filename=\"" + fileName + "\"; filename*=UTF-8''" + fileName; response.addHeader("Content-Disposition", contentDisposition); myModel = getModelAnwesenheit(kl, parsedFrom, parsedTo, anwFilter1, anwFilter2); XSSFWorkbook wb = ExcelUtil.readExcel( Config.getInstance().TEMPLATE_FILE_PATH + cmd + ".xlsx", new String[] { "Anwesenheit" }, myModel.getRows(), myModel.getCols()); wb = myModel.toExcel(wb, 0); wb.write(response.getOutputStream()); } else if (cmd.compareTo("Verlauf") == 0) { response.setContentType( "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); String fileName = cmd + "_" + kl.getKNAME() + "_" + new java.sql.Date(parsedFrom.getTime()).toString() + "-" + new java.sql.Date(parsedTo.getTime()).toString() + ".xlsx"; fileName = URLEncoder.encode(fileName, "UTF-8"); String contentDisposition = "attachment; filename=\"" + fileName + "\"; filename*=UTF-8''" + fileName; response.addHeader("Content-Disposition", contentDisposition); myModel = getModelVerlauf(kl, parsedFrom, parsedTo, filter1, filter2, me); XSSFWorkbook wb = ExcelUtil.readExcel( Config.getInstance().TEMPLATE_FILE_PATH + cmd + ".xlsx", new String[] { "Unterrichtsverlauf" }, myModel.getRows(), myModel.getCols()); wb = myModel.toExcel(wb, 0); wb.write(response.getOutputStream()); } else if (cmd.compareTo("UmfrageAuswertung") == 0) { Umfrage u = em.find(Umfrage.class, anwFilter1); Umfrage u2 = em.find(Umfrage.class, anwFilter2); response.setContentType( "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); String fileName = "Auswertung_" + u.getNAME() + "_vom_" + new java.sql.Date(parsedTo.getTime()).toString() + ".xlsx"; fileName = URLEncoder.encode(fileName, "UTF-8"); String contentDisposition = "attachment; filename=\"" + fileName + "\"; filename*=UTF-8''" + fileName; response.addHeader("Content-Disposition", contentDisposition); List<UmfrageResult> res1 = UmfrageUtil.getUmfrageResult(em, auth, anwFilter1, filter1); List<UmfrageResult> res2 = UmfrageUtil.getUmfrageResult(em, auth, anwFilter2, filter2); res2 = UmfrageUtil.getComparableResultList(res1, res2); myModel = getModelUmfrageAuswertung(res1); XSSFWorkbook wb = ExcelUtil.readExcel( Config.getInstance().TEMPLATE_FILE_PATH + u.getNAME() + ".xlsx", new String[] { "Hauptgruppe", "Vergleichsgruppe", "Info" }, myModel.getRows(), myModel.getCols()); wb = myModel.toExcel(wb, 0); myModel = getModelUmfrageAuswertung(res2); wb = myModel.toExcel(wb, 1); XSSFSheet s = wb.getSheetAt(2); XSSFRow r = s.getRow(0); r.getCell(0).setCellValue(u.getNAME()); r.getCell(1).setCellValue(filter1); r = s.getRow(1); r.getCell(0).setCellValue(u2.getNAME()); r.getCell(1).setCellValue(filter2); wb.write(response.getOutputStream()); } else { PrintWriter out = response.getWriter(); response.setContentType("application/json; charset=UTF-8"); String r = "{\"error\":true,\"msg\":\"Kann fr " + cmd + " kein Datenmodell erzeugen!\"}"; out.print(r); } } else { response.setContentType("application/pdf"); //Get the output stream for writing PDF object OutputStream out = response.getOutputStream(); try { String kopf = ""; kopf += ("<table border='1' align='center' width='100%'>"); kopf += ("<tr>"); kopf += ("<td rowspan=\"3\" width='150px'></td>"); kopf += ("<td align='center'><h2>Multi Media Berufsbildende Schulen Hannover</h2></td>"); if (cmd.compareTo("Verlauf") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Unterrichtsverlauf</b></td>"); } else if (cmd.compareTo("Anwesenheit") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Anwesenheit</b></td>"); } else if (cmd.compareTo("Fehlzeiten") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Fehlzeiten</b></td>"); } else if (cmd.compareTo("Stundenplan") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Stundenplan</b></td>"); } else if (cmd.compareTo("Vertretungsplan") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Vertretungsplan</b></td>"); } else if (cmd.compareTo("Notenliste") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Notenliste</b></td>"); } else if (cmd.compareTo("Betriebe") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Betriebsliste</b></td>"); } else if (cmd.compareTo("UmfrageAuswertung") == 0) { kopf += ("<td colspan=\"2\" align='center'><b>Digitales Klassenbuch Auswertung Umfrage</b></td>"); } kopf += ("</tr>"); kopf += ("<tr>"); if (cmd.compareTo("UmfrageAuswertung") == 0) { Umfrage u1 = em.find(Umfrage.class, anwFilter1); Umfrage u2 = em.find(Umfrage.class, anwFilter2); kopf += ("<td align='center' rowspan=\"2\" style=\"padding:5px;font-size: 11\">Hauptgruppe: (" + u1.getNAME() + "/" + filter1 + ")<br></br> Vergleichsgruppe: (" + u2.getNAME() + "/" + filter2 + ")</td>"); } else { kopf += ("<td align='center' rowspan=\"2\"><h3>Klasse/ Kurs: " + kl.getKNAME() + "</h3></td>"); } kopf += ("<td style=\"font-size: 11;\">Verantwortlicher: " + kl.getID_LEHRER() + "</td>"); kopf += ("<td style=\"font-size: 11;\">geprft</td>"); kopf += ("</tr>"); kopf += ("<tr>"); DateFormat df = new SimpleDateFormat("dd.MM.yyyy"); Calendar c = df.getCalendar(); c.setTimeInMillis(System.currentTimeMillis()); String dat = c.get(Calendar.DAY_OF_MONTH) + "." + (c.get(Calendar.MONTH) + 1) + "." + c.get(Calendar.YEAR); kopf += ("<td style=\"font-size: 11;\">Ausdruck am: " + dat + "</td>"); kopf += ("<td style=\"font-size: 11;\">Datum</td>"); kopf += ("</tr>"); kopf += ("</table>"); kopf += ("<p> </p>"); Document document; if (cmd.compareTo("Verlauf") == 0) { response.addHeader("Content-Disposition", "attachment; filename=Verlauf_" + kl.getKNAME() + "_" + new java.sql.Date(parsedFrom.getTime()).toString() + "-" + new java.sql.Date(parsedTo.getTime()).toString() + ".pdf"); document = createVerlauf(kl, kopf, parsedFrom, parsedTo, out, filter1, filter2, me); } else if (cmd.compareTo("Portfolio") == 0) { response.addHeader("Content-Disposition", "attachment; filename=Portfolio_" + kl.getKNAME() + ".pdf"); document = createPortfolio(kl, out); } else if (cmd.compareTo("Anwesenheit") == 0) { response.addHeader("Content-Disposition", "attachment; filename=Anwesenheit_" + kl.getKNAME() + "_" + new java.sql.Date(parsedFrom.getTime()).toString() + "-" + new java.sql.Date(parsedTo.getTime()).toString() + ".pdf"); document = createAnwesenheit(kl, kopf, parsedFrom, parsedTo, out, anwFilter1, anwFilter2); } else if (cmd.compareTo("Fehlzeiten") == 0) { response.addHeader("Content-Disposition", "attachment; filename=Fehlzeiten_" + kl.getKNAME() + "_" + new java.sql.Date(parsedFrom.getTime()).toString() + "-" + new java.sql.Date(parsedTo.getTime()).toString() + ".pdf"); MyTableDataModel myModel = getModelFehlzeiten(kl, parsedFrom, parsedTo); document = createFehlzeiten(kl, kopf, parsedFrom, parsedTo, out); } else if (cmd.compareTo("Vertretungsliste") == 0) { response.addHeader("Content-Disposition", "attachment; filename=Vertretungsliste_" + new java.sql.Date(parsedFrom.getTime()).toString() + "-" + new java.sql.Date(parsedTo.getTime()).toString() + ".pdf"); document = createVertretungsliste(parsedFrom, parsedTo, out); } else if (cmd.compareTo("Notenliste") == 0) { response.addHeader("Content-Disposition", "attachment; filename=Notenliste_" + kl.getKNAME() + "_" + new java.sql.Date(parsedTo.getTime()).toString() + ".pdf"); MyTableDataModel myModel = getModelNotenliste(kl, idSchuljahr); Schuljahr schuljahr = em.find(Schuljahr.class, idSchuljahr); document = createNotenliste(myModel, kopf, out, schuljahr.getNAME()); } else if (cmd.compareTo("Betriebe") == 0) { response.addHeader("Content-Disposition", "attachment; filename=Betriebsliste_" + kl.getKNAME() + "_" + new java.sql.Date(parsedTo.getTime()).toString() + ".pdf"); MyTableDataModel myModel = getModelBetriebsliste(kl); document = createBetriebsListe(myModel, kopf, out); } else if (cmd.compareTo("UmfrageAuswertung") == 0) { response.addHeader("Content-Disposition", "attachment; filename=UmfrageAuswertung_" + new java.sql.Date(parsedTo.getTime()).toString() + ".pdf"); List<UmfrageResult> res1 = UmfrageUtil.getUmfrageResult(em, auth, anwFilter1, filter1); List<UmfrageResult> res2 = UmfrageUtil.getUmfrageResult(em, auth, anwFilter2, filter2); res2 = UmfrageUtil.getComparableResultList(res1, res2); if (res1 != null && res2 != null) { Log.d("erzeuge pdf Dokument"); document = createUmfrageauswertung(res1, res2, anwFilter1, anwFilter2, filter1, filter2, kopf, out); } } } catch (DocumentException exc) { Log.d("Document Exception " + exc.getMessage()); exc.printStackTrace(); throw new IOException(exc.getMessage()); } catch (ParseException ex) { Log.d("Parse Exception " + ex.getMessage()); Logger.getLogger(DokuServlet.class.getName()).log(Level.SEVERE, null, ex); } finally { out.close(); } } } else { response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { out.println("<!DOCTYPE html>"); out.println("<html>"); out.println("<head>"); out.println("<title>Doku Servlet Usage</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>You are not authorized</h1>"); out.println("</body>"); out.println("</html>"); } } } }
From source file:de.tuttas.servlets.MyTableDataModel.java
public XSSFWorkbook toExcel(XSSFWorkbook wb, int sheetNumer) { XSSFSheet sh = wb.getSheetAt(sheetNumer); for (int y = 0; y < rows; y++) { XSSFRow r = sh.getRow(y); for (int x = 0; x < cols; x++) { XSSFCell c = r.getCell(x); String d = data[y][x]; Log.d("Write to Cell " + d); if (d != null) { try { double value = Double.parseDouble(d); c.setCellValue(value); } catch (NumberFormatException nux) { c.setCellValue(d);//from w ww . j a va2 s .c o m } } } } return wb; }
From source file:edu.jhu.cvrg.timeseriesstore.opentsdb.store.ExcelStorer.java
License:Apache License
@Override public ArrayList<IncomingDataPoint> extractTimePoints(InputStream inputStream, String[] channels, int samples, long epochTime) { ArrayList<IncomingDataPoint> dataPoints = new ArrayList<IncomingDataPoint>(); XSSFWorkbook subjectWorkbook = getWorkbook(inputStream); HashMap<String, String> tags = new HashMap<String, String>(); for (int i = 0; i < subjectWorkbook.getNumberOfSheets(); i++) { XSSFSheet sheetIn = subjectWorkbook.getSheetAt(i); for (int r = 1; r <= sheetIn.getLastRowNum(); r++) { long currentTime = epochTime; XSSFRow row = sheetIn.getRow(r); String channel = getChannelName(i, channels); dataPoints.add(new IncomingDataPoint("ecg.uv." + channel, currentTime, String.valueOf(row.getCell(1).getNumericCellValue()), tags)); tags.put("format", "excel"); currentTime++;/* ww w . ja v a 2 s . c om*/ } } return dataPoints; }
From source file:edu.vt.vbi.patric.common.ExcelHelper.java
License:Apache License
/** * Returns the width the Column should be (XSSF version) * @param sheet - sheet of workbook//w ww. j a va 2 s .c om * @param col - the column to work with * @return length (in characters) of that column */ private int decideXColumnWidth(XSSFSheet sheet, int col) { int titleLength = sheet.getRow(0).getCell(col).getStringCellValue().length(); int longestString = titleLength; for (int i = 0; i < sheet.getLastRowNum(); i++) { XSSFRow row = sheet.getRow(i); XSSFCell cell = row.getCell(col); int temp = cell.getStringCellValue().length(); if (temp > titleLength * 2) { longestString = temp; } } if (longestString > titleLength * 4) { longestString = titleLength * 4; } return longestString; }
From source file:egovframework.rte.fdl.excel.util.AbstractPOIExcelView.java
License:Apache License
/** * Convenient method to obtain the cell in the given sheet, row and column. * * <p>Creates the row and the cell if they still doesn't already exist. * Thus, the column can be passed as an int, the method making the needed downcasts.</p> * * @param sheet a sheet object. The first sheet is usually obtained by workbook.getSheetAt(0) * @param row thr row number//from www . j a v a2s . c o m * @param col the column number * @return the XSSFCell */ protected XSSFCell getCell(XSSFSheet sheet, int row, int col) { XSSFRow sheetRow = sheet.getRow(row); if (sheetRow == null) { sheetRow = sheet.createRow(row); } XSSFCell cell = sheetRow.getCell((short) col); if (cell == null) { cell = sheetRow.createCell((short) col); } return cell; }
From source file:eu.alpinweiss.filegen.command.steps.impl.ReadInputParametersStepImpl.java
License:Apache License
@Override public void execute(Model model) { String parameter = model.getParameter(INPUT_PARAMETER); model.getFieldDefinitionList().clear(); try {/*from w w w. ja v a2 s. c o m*/ FileInputStream file = new FileInputStream(new File(parameter)); try (XSSFWorkbook workbook = new XSSFWorkbook(file)) { XSSFSheet sheet = workbook.getSheetAt(0); int iterationCount = readIterationCount(sheet); String lineSeparator = readLineSeparator(sheet); String outputFileName = readOutputFileName(sheet); int sheetCount = readSheetCount(sheet); outputWriterHolder .writeValueInLine("Iterations: " + iterationCount + " lineSeparator: " + lineSeparator); List<Object[]> fields = new ArrayList<>(sheet.getLastRowNum() - 4); for (int i = 5; i <= sheet.getLastRowNum(); i++) { XSSFRow row = sheet.getRow(i); Object[] fieldDefinition = new Object[row.getLastCellNum()]; for (int y = 0; y < row.getLastCellNum(); y++) { XSSFCell cell = row.getCell(y); if (cell == null) { fieldDefinition[y] = null; break; } cell.setCellType(Cell.CELL_TYPE_STRING); fieldDefinition[y] = cell.toString(); } fields.add(fieldDefinition); } file.close(); for (Object[] field : fields) { FieldDefinition fieldDefinition = new FieldDefinition(); String name = getStringName(field[0]); if (name == null || "".equals(name)) { break; } fieldDefinition.setFieldName(name); String fieldType = (String) field[1]; fieldDefinition.setType( fieldType != null ? FieldType.valueOf(fieldType.toUpperCase()) : FieldType.STRING); String fieldNeedToGenerate = (String) field[2]; fieldDefinition.setGenerate( fieldNeedToGenerate != null ? Generate.valueOf(fieldNeedToGenerate.toUpperCase()) : Generate.N); if ((field.length > 3)) { if (field[3] != null && field[3] instanceof Number) { fieldDefinition.setPattern(field[3].toString()); } else { fieldDefinition.setPattern((String) field[3]); } } model.getFieldDefinitionList().add(fieldDefinition); } model.setRowCount(iterationCount); model.setLineSeparator(lineSeparator); model.setOutputFileName(outputFileName); model.setDataStorageCount(sheetCount); outputWriterHolder.writeValueInLine(""); workbook.close(); } } catch (FileNotFoundException e) { LOGGER.error("Can't read input parameters file", e); } catch (IOException e) { LOGGER.error("Error while reading xlsx file", e); } }
From source file:eu.alpinweiss.filegen.command.steps.impl.ReadInputParametersStepImpl.java
License:Apache License
private int readSheetCount(XSSFSheet sheet) { XSSFRow row = sheet.getRow(3); Cell cell = row.getCell(1); return (int) cell.getNumericCellValue(); }
From source file:eu.alpinweiss.filegen.command.steps.impl.ReadInputParametersStepImpl.java
License:Apache License
private String readOutputFileName(XSSFSheet sheet) { XSSFRow row = sheet.getRow(2); Cell cell = row.getCell(1); return cell.getStringCellValue(); }
From source file:eu.alpinweiss.filegen.command.steps.impl.ReadInputParametersStepImpl.java
License:Apache License
private int readIterationCount(XSSFSheet sheet) { XSSFRow row = sheet.getRow(0); Cell cell = row.getCell(1); return (int) cell.getNumericCellValue(); }