如何在JExcel(jxl)中将格式化数字编写为数字

我正在使用Java Spring和jxl在服务器端创buildExcel工作簿。 需要在Excel中显示的数据由已格式化的数字组成。 我在用

WritableCellFormat wcf = new WritableCellFormat(); wcf.setAlignment(Alignment.RIGHT); .... .... sheet.addCell(new Label(j, i + 1, xxx, wcf)); //where xxx is a string which is a number already formatted 

在下载的excel文件中,所有这些数字都以文本forms存储,所以Excel不能使用公式,它会给出“数字存储为文本”的警告,并且必须执行“转换为数字”。

在jxl中,我们可以传递string,并把它们解释为数字吗? 我所有的数字都是有效的数字格式不同,使用$,%,千分隔符。 我不想将它们转换为有效的数字,并在导出为Excel时重新格式化。

请帮忙。 谢谢。

我有一个类似的问题

我将variables更改为int,并使用它帮助的新的Number函数。

 int eday = Integer.parseInt(Trainingresult.getString("Day")); //Label Eday = new Label(1, i, eday); firstsheet.addCell(new Number(1,i,eday)); 
 /*use new Number to write number cell*/ WritableWorkbook w; try { w = Workbook.createWorkbook(new File("c:/test.xls")); WritableSheet s = w.createSheet("Demo Book", 0); WritableCellFormat wcf = new WritableCellFormat(); for (int i=0;i<10;i++){ int row = i+1; /*add cell number*/ s.addCell(new Number(1, i, (i*15))); /*add cell number*/ s.addCell(new Number(2, i, (i*3+Math.random()*10))); /*add formula*/ s.addCell(new Formula(3,i,"B"+row+" * C"+row)); } w.write(); w.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (RowsExceededException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (WriteException e) { // TODO Auto-generated catch block e.printStackTrace(); }