求助大神,我已经查了一天了。还是没有解决,无奈来网上求助。
style.setDataFormat(HSSFDataFormat.getBuiltinFormat("#,##0"));
里面的参数为“0”“0.0”都显示为自定义格式。
设置格式
public void createCell(double value,XSSFCellStyle style) {
XSSFCell c = (XSSFCell) curRow.createCell(curColIndex);
//setCellStyle(c);
c.setCellValue(value);
c.setCellStyle(style);
c.setCellType(HSSFCell.CELL_TYPE_NUMERIC);
curColIndex++;
}
cellStyle.setDataFormat(format.getFormat("¥#,##0"))?
我是想修改为 数值格式,结果适得其反变成了货币格式。谢谢答主,有没有其他方法。
@枫雨桐: http://blog.csdn.net/spp_1987/article/details/13770637
@让我发会呆: 这些我都试过了不行。我在想是不是我的office版本是2013的问题。或者是XSSFWorkbook和HSSFWorkbook 两者不兼容的问题。
@让我发会呆:
一直显示为货币。或者是是自定义
@枫雨桐: XSSFWorkbook和HSSFWorkbook两者只能同时用一个吧
@让我发会呆: 是只能用一个,我也不知道问题出在哪里了。
@枫雨桐: setCellStyle这才是设置格式的吧,setCellType我记得我设置居中的时候用的这个
@让我发会呆:是这样设置的
@枫雨桐: 我刚才用hssf试了文本格式 是可以的啊
HSSFCellStyle cs = workbook.createCellStyle();
cs.setDataFormat(workbook.createDataFormat().getFormat("@"));
hssfCell.setCellStyle(cs);
只能帮你到这了
@让我发会呆: 这个我试了,文本是可以、不管怎样还是谢谢你了。若到晚上还没有更好的答案,我就采纳你的了。
同问,我也遇到相同的问题,请问你最后找到解决的办法了吗?
等待你的回复
https://q.cnblogs.com/q/101451/
最近写程序也遇到了这个问题,多方查询最终解决,虽然过去这么长时间,也想给后来人提供一个方法
XSSFWorkbook workbook = new XSSFWorkbook();
......
XSSFCellStyle cellStyle3 = workbook.createCellStyle();
cellStyle3.setDataFormat(workbook.createDataFormat().getFormat("#,##0.00_ "));