public boolean init(){
		try {
			xlsxs = new ArrayList<BaseRegex>();
			reader = new  XSSFWorkbook(new FileInputStream(path));
			XSSFSheet sheet = reader.getSheetAt(0);
			int rows = sheet.getPhysicalNumberOfRows();
			for (int r = 0; r < rows; r++) {
				XSSFRow row = sheet.getRow(r);
				if (row == null) {
					continue;
				}

				int cells = row.getPhysicalNumberOfCells();
				System.out.println("\nROW " + row.getRowNum() + " has " + cells
						+ " cell(s).");
				for (int c = 0; c < cells; c++) {
					XSSFCell cell = row.getCell(c);
					String value = null;

					switch (cell.getCellType()) {

						case HSSFCell.CELL_TYPE_FORMULA:
							value = "FORMULA value=" + cell.getCellFormula();
							break;

						case HSSFCell.CELL_TYPE_NUMERIC:
							value = "NUMERIC value=" + cell.getNumericCellValue();
							break;

						case HSSFCell.CELL_TYPE_STRING:
							value = "STRING value=" + cell.getStringCellValue();
							break;

						default:
					}
					System.out.println("CELL col=" + cell.getColumnIndex() + " VALUE="
							+ value);
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
			return false;
		} 
		
		return true;
	}