将 HSSFCellStyle 复制到 NPOI 中的 XSSFCellStyle
Copy HSSFCellStyle to XSSFCellStyle in NPOI
我的输入文件是 .xls,我必须从中读取数据、操作并连同样式一起写回 .xlsx 文件。
因此,使用 NPOI HSSF 从 .xls 读取并使用 NPOI XSSF 生成 .xlsx 文件。
我完成了数据。但我必须从 .xls 复制单元格格式并应用于输出文件。
当我写 outputheaderStyle.CloneStyleFrom(inputheaderStyle);
时出现异常,因为 inputheaderStyle 是 HSSFCellStyle 类型,而 outputheaderStyle 是 XSSFCellStyle 类型
Can only clone from one XSSFCellStyle to another, not between
HSSFCellStyle and XSSFCellStyle
outputheaderStyle.CloneStyleFrom((XSSFCellStyle)inputheaderStyle);
抛出异常
Unable to cast object of type 'NPOI.HSSF.UserModel.HSSFCellStyle' to
type 'NPOI.XSSF.UserModel.XSSFCellStyle'
还有其他方法可以复制样式吗?
嗯,.xls 文件的单元格样式是 HSSFCellStyle,.xlsx 文件是 XSSFCellStyle。目前没有直接的方法将 NPOI 中的 HSSFCellStyle 转换为 XSSFCellStyle。
我通过一个一个地复制一个样式来管理我的程序。
_xssfStyle .BorderLeft = _hssfStyle .BorderLeft;
_xssfStyle .BorderRight = _hssfStyle .BorderRight;
_xssfStyle .BorderTop = _hssfStyle .BorderTop;
_xssfStyle .BorderBottom = _hssfStyle .BorderBottom;
_xssfStyle .FillForegroundColor = NPOI.HSSF.Util.HSSFColor.Grey25Percent.Index;
_xssfStyle .FillPattern = NPOI.SS.UserModel.FillPattern.SolidForeground;
_xssfStyle .WrapText = _hssfStyle .WrapText;
_xssfStyle .VerticalAlignment = _hssfStyle .VerticalAlignment;
我的输入文件是 .xls,我必须从中读取数据、操作并连同样式一起写回 .xlsx 文件。
因此,使用 NPOI HSSF 从 .xls 读取并使用 NPOI XSSF 生成 .xlsx 文件。 我完成了数据。但我必须从 .xls 复制单元格格式并应用于输出文件。
当我写 outputheaderStyle.CloneStyleFrom(inputheaderStyle);
时出现异常,因为 inputheaderStyle 是 HSSFCellStyle 类型,而 outputheaderStyle 是 XSSFCellStyle 类型
Can only clone from one XSSFCellStyle to another, not between HSSFCellStyle and XSSFCellStyle
outputheaderStyle.CloneStyleFrom((XSSFCellStyle)inputheaderStyle);
抛出异常
Unable to cast object of type 'NPOI.HSSF.UserModel.HSSFCellStyle' to type 'NPOI.XSSF.UserModel.XSSFCellStyle'
还有其他方法可以复制样式吗?
嗯,.xls 文件的单元格样式是 HSSFCellStyle,.xlsx 文件是 XSSFCellStyle。目前没有直接的方法将 NPOI 中的 HSSFCellStyle 转换为 XSSFCellStyle。
我通过一个一个地复制一个样式来管理我的程序。
_xssfStyle .BorderLeft = _hssfStyle .BorderLeft;
_xssfStyle .BorderRight = _hssfStyle .BorderRight;
_xssfStyle .BorderTop = _hssfStyle .BorderTop;
_xssfStyle .BorderBottom = _hssfStyle .BorderBottom;
_xssfStyle .FillForegroundColor = NPOI.HSSF.Util.HSSFColor.Grey25Percent.Index;
_xssfStyle .FillPattern = NPOI.SS.UserModel.FillPattern.SolidForeground;
_xssfStyle .WrapText = _hssfStyle .WrapText;
_xssfStyle .VerticalAlignment = _hssfStyle .VerticalAlignment;