gpt4 book ai didi

java - 打开导出的 CSV 文件时,Excel 不显示小数点零

转载 作者:行者123 更新时间:2023-11-30 11:02:29 24 4
gpt4 key购买 nike

我正在尝试导出内容类型错误的 CSV 文件,以便在 Excel 中打开它。当对象的值为 2.0 时,在 Excel 工作表中它只显示 2。它只是省略了小数值。当值为 2.1、2.2 等时,它工作正常。

2.0、3.0的时候问题就来了

    StringBuffer sb= new StringBuffer();
sb.append("2.0");

HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext()
.getResponse();
response.setCharacterEncoding("UTF-8");
response.setContentType("application/ms-excel");
response.setHeader("Content-Disposition", "attachment;filename=Test.csv");
response.getOutputStream().write(sb.toString().getBytes(Charset.forName("UTF-8")));
response.getOutputStream().flush();
response.getOutputStream().close();
FacesContext.getCurrentInstance().responseComplete();

这是怎么引起的,我该如何解决?

最佳答案

您可以使用此代码:

   sb.append("\"2.0\"");

我经常使用更冗长的,来强制文本格式:

   sb.append("=\"2.0\"");

(参见 https://stackoverflow.com/a/165052/476791)

要验证此解决方案是否有效,请打开记事本,输入 ="2.0",将其另存为 Test.csv 在您的桌面上并双击它。

关于java - 打开导出的 CSV 文件时,Excel 不显示小数点零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30753564/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com