There are 7 types of data in Excel cells:
Boolean, Date, Error, inlinestring, number, sharedstring, String
Read the source code:
1list<string> returnlist =Newlist<string>();2 using(Spreadsheetdocument spreadsheetdocument = spreadsheetdocument.open (filename,false))3 {4 foreach(Sheet SheetinchSpreadsheetdocument.workbookpart.workbook.descendants<sheet>())5 {6 Returnlist.add (sheet. Name);7 }8 9 foreach(Sheet SheetinchSpreadsheetdocument.workbookpart.workbook.descendants<sheet>())Ten { Oneienumerable<sheet> Ienumerablesheet = spreadsheetdocument.workbookpart.workbook.descendants<sheet> (). Where (s = = S.name = =sheet. Name); AWorksheetpart Worksheetpart =(Worksheetpart) spreadsheetDocument.WorkbookPart.GetPartById (Ienumerablesheet.first (). ID); -ienumerable<row> rows = worksheetpart.worksheet.descendants<row>(); -Sharedstringtable sharedstringtable =spreadsheetDocument.WorkbookPart.SharedStringTablePart.SharedStringTable; the foreach(Row rowinchrows) - { - foreach(Cell cellinchRow. Descendants<cell>()) - { + if(Cell. Childelements.count = =0) - { + A } at Else - { - if(Cell. DataType! =NULL) - { - //get the shared data type - if(Cell. Datatype.value = =cellvalues.sharedstring) in { - stringCellvalue = sharedstringtable.childelements[int. Parse (cell. Cellvalue.innertext)]. InnerText; to Returnlist.add (cellvalue); + } - } the } * $ }Panax Notoginseng } - } the returnreturnlist; +}
where bool type data 0 is processed to false 1 is processed to true;
The most difficult data to deal with is time date;
Only shared data is currently processed because of job requirements
OPENXML 2.0 Reading Excel