Java 出力Excel 文件,并向该文件中写固定格式的日期。我往文件里写的是yyyy-mm-dd
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 出力Excel 文件,并向该文件中写固定格式的日期。我往文件里写的是yyyy-mm-dd相关的知识,希望对你有一定的参考价值。
Java 出力Excel 文件,并向该文件中写固定格式的日期。我往文件里写的是yyyy-mm-dd的形式,当我打开excle 文件里面的日期格式是yyyy/mm/dd 的只有我双击之后才会显示我要的格式。请问是怎么回事?
你写入的yyyy-mm-dd而显示yyyy/mm/dd这是正常的,表示EXCEL理解了你写入的数据是日期格式,显示的时候由于没有指定单元格的格式,所以系统以默认的yyyy/mm/dd格式显示,这个其实没关系。如果你特别希望显示为yyyy-mm-dd格式,可以写入内容前增加一个单引号(半角英文),这样强制告诉EXCEL这是个文本,不要理解为日期。
还有一个办法,就是JAVA里面写入数据完毕,设置单元格的格式为yyyy-mm-dd,通过设置.NumberFormat 属性为 "yyyy-mm-dd"实现。追问
只能在代码里设置格式吗?不能在出力的模板里设置?
追答当然可以在模版里面设置,设置单元格格式为日期里面的yyyy/mm/dd即可,JAVA写入日期后会自动显示为指定的格式。
参考技术A 可以把单元格设置为文本格式,直接传进去字符串就可以HSSFCellStyle cellStyle2 = demoWorkBook.createCellStyle();
HSSFDataFormat format = demoWorkBook.createDataFormat();
cellStyle2.setDataFormat(format.getFormat("@"));
cell.setCellStyle(cellStyle2);
java 一个文件中写多个class
一个java文件中可以包含多个类,但这些类中一个特殊类,这个类的属性为public,且这个类的名字与文件名相同,java文件中仅有一个类为public.
interface Moveable { void run(); } //具体产品角色 class Plane implements Moveable { @Override public void run() { System.out.println("plane...."); } } class Broom implements Moveable { @Override public void run() { System.out.println("broom....."); } } //抽象工厂 abstract class VehicleFactory { abstract Moveable create(); } //具体工厂 class PlaneFactory extends VehicleFactory{ public Moveable create() { return new Plane(); } } class BroomFactory extends VehicleFactory{ public Moveable create() { return new Broom(); } } //测试类 public class Main { public static void main(String[] args) { VehicleFactory factory = new BroomFactory(); Moveable m = factory.create(); m.run(); } }
以上是关于Java 出力Excel 文件,并向该文件中写固定格式的日期。我往文件里写的是yyyy-mm-dd的主要内容,如果未能解决你的问题,请参考以下文章