gpt4 book ai didi

java - Apache POI 数据格式

转载 作者:太空宇宙 更新时间:2023-11-04 06:33:23 25 4
gpt4 key购买 nike

我正在使用 Apache POI 构建一些 Excel 文件,我想确保某些单元格的类型为“Number”。

我尝试了以下方法:

    style.setDataFormat(HSSFDataFormat.getBuiltinFormat("0"));
cell.setCellValue(Integer.valueOf(value));
cell.setCellStyle(style);

    HSSFDataFormat format = workbook.createDataFormat();
style.setDataFormat(format.getFormat("0"));
cell.setCellValue(Integer.valueOf(value));
cell.setCellStyle(style);

其中 value 是一个字符串,我想在单元格中将其显示为数字。

两种方法都有效。那么,两者之间有区别吗HSSFDataFormat.getBuiltinFormat() 和 getFormat()?

最佳答案

正如您在源代码中看到的,函数 getFormat 首先使用 buildinFormats:

public short getFormat( String format )
{
ListIterator i;
int ind;
if (format.toUpperCase().equals("TEXT"))
format = "@";
if ( !movedBuiltins )
{
i = builtinFormats.listIterator();
while ( i.hasNext() )
{
ind = i.nextIndex();
if ( formats.size() < ind + 1 )
{
formats.setSize( ind + 1 );
}
formats.set( ind, i.next() );
}
movedBuiltins = true;
}
i = formats.listIterator();
while ( i.hasNext() )
{
ind = i.nextIndex();
if ( format.equals( i.next() ) )
return (short) ind;
}
ind = workbook.getFormat( format, true );
if ( formats.size() <= ind )
formats.setSize( ind + 1 );
formats.set( ind, format );
return (short) ind;
}

关于java - Apache POI 数据格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25790124/

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