Java JXL编号格式和单元格类型
我正在使用JXL编写一个Excel文件。客户希望某列显示小数点后一位的数字。他们还希望单元格类型为“数字”。使用以下(测试)代码时,数字显示正确,但单元格类型为“自定义” 如果我将数字格式更改为NumberFormats(例如NumberFormats.INTEGER)中的一个变量,则单元格类型是正确的。当然,数字是以整数的形式显示的。我找不到符合我需要的NumberFormats变量Java JXL编号格式和单元格类型,java,excel,jxl,Java,Excel,Jxl,我正在使用JXL编写一个Excel文件。客户希望某列显示小数点后一位的数字。他们还希望单元格类型为“数字”。使用以下(测试)代码时,数字显示正确,但单元格类型为“自定义” 如果我将数字格式更改为NumberFormats(例如NumberFormats.INTEGER)中的一个变量,则单元格类型是正确的。当然,数字是以整数的形式显示的。我找不到符合我需要的NumberFormats变量 有人知道一种方法可以使数字显示和单元格类型都正确吗?我需要所有数字都显示为1位小数(即使它们是整数)。我不能切
有人知道一种方法可以使数字显示和单元格类型都正确吗?我需要所有数字都显示为1位小数(即使它们是整数)。我不能切换到任何其他技术,我必须使用JXL。如果这不是您想要的,我很抱歉。但是,我对您的需求的理解是,单元格类型=数字加1位小数。您可以定义自己的数字格式。您可以使用此格式(“#.0”)获取所需内容(例如:900.0、23.034324.0等)
我知道这个问题是在2011年提出的。你设法弄明白了吗?我也有同样的问题,尽管我还有其他选择,那就是使用ApachePOI。我忘记了我最后做了什么,现在在另一家公司工作。很抱歉,我收到一个错误:“NumberFormat”是抽象的。无法实例化
File excelFile = new File("C:\\Users\\Rachel\\Desktop\\TestFile.xls");
WritableWorkbook excelBook = Workbook.createWorkbook(excelFile);
WritableSheet excelSheet = excelBook.createSheet("Test Sheet", 0);
WritableFont numberFont = new WritableFont(WritableFont.ARIAL);
WritableCellFormat numberFormat = new WritableCellFormat(numberFont, new NumberFormat("#0.0"));
Number numberCell = new Number(0, 0, 25, numberFormat);
excelSheet.addCell(numberCell);
excelBook.write();
excelBook.close();
NumberFormat decimalNo = new NumberFormat("#.0");
WritableCellFormat numberFormat = new WritableCellFormat(decimalNo);
//write to datasheet
Number numberCell = new Number(0, 0, 25, numberFormat);
excelSheet.addCell(numberCell);