我在java类中使用以下映射
Map<String,String> fieldNameMap=new LinkedHashMap<String,String>();
fieldNameMap.put("provLocation", "Location");
fieldNameMap.put("deviceOwnerTn","Owner Telephone Number");
我将其作为csv下载提供。但是在第二项的情况下,当数字超过5或6位数时,它会以指数格式显示在excel中(例如1.235E + 09)。我想避免这种情况。一种可能的解决方案是将其用单引号括起来(例如'1234567890')。但我该怎么做呢?请帮忙!
注意:对于fieldNameMap,第一个参数是要填充的值,第二个参数是列标题。
答案 0 :(得分:0)
据我所知,CSV中的输出是您想要的方式(没有指数),但Excel会以您不想要的格式显示它。
问题是Excel尝试智能并猜测字段的类型,并且所有数字字段都是“数字”,默认情况下它以指数(科学)格式显示。
见Excel CSV - Number Cell Format,有一些非常好的答案。