I am tring to implement NPOI package to covert an XSL file into XSLX one. Here is my code:
var stream = new FileStream("path to xls file", FileMode.Open);
HSSFWorkbook xsl_Workbook = new HSSFWorkbook(stream); // Old format
XSSFWorkbook retVal = new XSSFWorkbook(); // New format
for (int i = 0; i < xsl_Workbook.NumberOfSheets; i++)
{
**XSSFSheet xssfsheet = (XSSFSheet)xsl_Workbook.GetSheetAt(i);** // error line
xssfsheet.CopyTo(retVal, xsl_Workbook.GetSheetName(i), true, true);
MemoryStream mstream = new MemoryStream();
retVal.Write(mstream);
retVal.Close();
bytes = new byte[mstream.Length];
mstream.Read(bytes, 0, (int)mstream.Length);
File.WriteAllBytes("path to newfile with ext xlsx", bytes);
mstream.Close();
}
I am getting an error at the error line:
System.InvalidCastException: Unable to cast object of type 'NPOI.HSSF.UserModel.HSSFSheet' to type 'NPOI.XSSF.UserModel.XSSFSheet'
I am not a C# developer, I am addapting what I can find online. Plesae help.
Thanks