使用Apache POI在Excel中更改小数点和千位分隔符

有谁知道如果使用apache-poi库,您可以更改Microsoft Excel的十进制和千位分隔符?

我需要在Excel中导出一些来自Web应用程序的数据,并根据用户的设置对数字进行格式化。 所以当数据导出时,数字应该看起来应该如何在应用程序的页面中。

谢谢

您需要以这种方式设置您的CellStyle dataFormat(如果您使用整数并且需要千分隔符)

cellStyle.setDataFormat(creationHelper.createDataFormat().getFormat("#,##0")); cell.setCellStyle(cellStyle); 

我认为你需要这样的东西:(我没有尝试,所以也许你需要修改一下) #,##0.00请注意:使用逗号非常重要,而不是点。 如果您的语言环境设置正确,您将看到一个点。

Excel中的格式化通过“工具”>“选项”>“国际”对话框进行控制,并存储在本地首选项中,而不是存储在文件中。 所以你不能通过POI控制这个。

我能想到的唯一解决scheme是提供文本而不是数字。 但它会阻止用户在Excel中进行任何计算。