Java POI SS用户模型转换单元样式
Im将HSSF转换为SS模型 在我们的代码中有一部分我们检查了cellstyle和一些比较 在新的ss模型中,没有一种方法可以像HSSF模型中那样获取样式名称 我们正在做这样的事情:Java POI SS用户模型转换单元样式,java,apache-poi,Java,Apache Poi,Im将HSSF转换为SS模型 在我们的代码中有一部分我们检查了cellstyle和一些比较 在新的ss模型中,没有一种方法可以像HSSF模型中那样获取样式名称 我们正在做这样的事情: private static CellStyle findStyleByName(Workbook wb, String styleName) { for ( short i = 0; i < wb.getNumCellStyles(); i++ ) { CellStyl
private static CellStyle findStyleByName(Workbook wb, String styleName)
{
for ( short i = 0; i < wb.getNumCellStyles(); i++ )
{
CellStyle style = wb.getCellStyleAt(i);
if ( styleName.equals(style.getUserStyleName()) )
{
return style;
}
}
return null;
}
私有静态CellStyle findStyleByName(工作簿wb,字符串styleName)
{
对于(短i=0;i
这会失败,因为style.getUserStyleName()对CellStyle
无效,它仅对HSSFCellStyle
有没有其他方法或方法可以使用ss usermodel实现这一点?快速浏览一下,.xlsx文件中的底层XML似乎不再具有该功能,这就是POI无法公开它的原因。(如果查看CTXf类,它没有任何字符串,并且是从模式自动生成的)。可能是新的文件格式不再支持它了吗?是的,它在SS模型中不受支持……苏西知道它在SS模型中不受支持,问题是.xlsx文件格式是否支持它!如果文件格式为,则可以添加缺少的位,但根据我上面的评论,我认为它可能不再是文件格式:/U可以使用工作簿=新XSSFWORKWORK();我想可以用那种风格。