public static boolean excelToTxt(String xlsFile, String txtFile) {
BufferedWriter bw = null;
try {
System.out.println("********************開始" + xlsFile + "轉爲" + txtFile + "********************");
Pattern pattern = Pattern.compile("\\s*|\t|\r|\n");
File f = new File(xlsFile);
String fName = f.getName();
Workbook workbook = Workbook.getWorkbook(f);
Sheet sheet = workbook.getSheet(0);
bw = new BufferedWriter (new OutputStreamWriter(new FileOutputStream(txtFile), "UTF-8"));
int j = sheet.getRows();
int y = sheet.getColumns();
int k = 0;
for (k=0;k<y;k++){
Cell cell = sheet.getCell(k, 0);
if(StringUtils.isBlank(cell.getContents())) break;
}
for (int i = 1; i < j; i++) {
StringBuilder str = new StringBuilder();
for (int x = 0; x < k; x++) {
Cell cell = sheet.getCell(x, i);
if(x==0&&StringUtils.isBlank(cell.getContents())) break;
if(cell.getType()==CellType.DATE){
DateCell dCell = (DateCell) cell;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
str.append(sdf.format(dCell.getDate()));
}else{
str.append(cell.getContents().replace(",", "").replace("null", "").replace("%", ""));
}
}
if(StringUtils.isNotBlank(str.toString())){
Matcher matcher = pattern.matcher(str.toString());
bw.write(matcher.replaceAll(""));
bw.flush();
bw.newLine();
bw.flush();
}
} if(StringUtils.isNotBlank(str.toString())){
Matcher matcher = pattern.matcher(str.toString());
bw.write(matcher.replaceAll(""));
bw.flush();
bw.newLine();
bw.flush();
}