我有一个 excel 文件,其单元格具有不同的数据格式,从简单的货币格式$#,##0.00 ($1,200.00)
到更复杂的格式。
问题是当我写这些单元格时,格式没有被遵循。因此,如果我在货币格式的单元格中输入一个值,则该值会显示为没有格式:
例如:我输入了1234
。我期望的是$1,234.00
(在 excel 单元格中定义)。我得到的仍然是1234
在我的尝试中,我什至尝试将单元格自己的格式应用于自身
这是我使用的代码:
ServletContext context = getServletContext();
InputStream inp = context.getResourceAsStream("/WEB-INF/MyExcel.xlsx");
Workbook wbTemp = new XSSFWorkbook(inp);
Sheet wbTempSheet = wbTemp.getSheetAt(0);
Cell targetCell = wbTempSheet.getRow(0).getCell(0);
targetCell.setCellValue(request.getParameter("myNumber"));
//i even tried reapplying the cell's own format to itself
CellStyle cs = targetCell.getCellStyle();
String df = cs.getDataFormatString();
System.out.println(df);
cs.setDataFormat(wbTemp.createDataFormat().getFormat(df));
targetCell.setCellStyle(cs);
在检查 excel 文件时,我注意到这些格式确实得到了实施。但是我需要按每个单元格的选项卡才能看到它生效。是否有替代或至少一种方法来模拟选项卡操作,以便在打开时格式化单元格?