Экспорт данных из Excel в DataTable и проверка смешанного типа данных

Возможные сценарии использования

Если столбец содержит данные различных типов, программа выбросит исключение типа при экспорте данных в DataTable. При экспорте данных таблицы, по умолчанию Aspose.Cells оценивает тип данных для значений на основе самого первого (ячейки) значения в столбце. Так что, если значение является числом, это означает, что тип данных столбца будет числовым, что разумно. Если самое первое значение является числом, но в столбце есть алфанумерические данные или значения, стоит назначить тип данных строки. Чтобы справиться с этим, используйте перегрузку ExportDataTable, которая включает ExportDataTableOptions и попробуйте установить логический атрибут ExportTableOptions.CheckMixedValueType в “true”, если в столбце есть числовые и строковые значения, чтобы избежать ошибок.

Экспорт данных из Excel в DataTable и проверка смешанного типа данных

Следующий образец объясняет использование свойства ExportTableOptions.CheckMixedValueType для экспорта данных из Excel в DataTable. Пожалуйста, ознакомьтесь с образцом Excel-файла, его скриншотом и выводом на консоль для справки.

Образец кода

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create workbook
Workbook workbook = new Workbook("sample.xlsx");
// Access first worksheet
Worksheet worksheet = workbook.Worksheets[0];
// Export Data Table Options
ExportTableOptions opts = new ExportTableOptions();
opts.CheckMixedValueType = true;
// Export Data Table
DataTable dt = worksheet.Cells.ExportDataTable(0, 0, 7, 5, opts);
// Display the type of DataColumn
DataColumnCollection columns = dt.Columns;
foreach (DataColumn column in columns)
{
Console.WriteLine(column.ColumnName + " = " + column.DataType);
}

Снимок экрана




Вывод в консоль

Ниже приведен вывод отладки консоли вышеприведенного образца кода

Column1 = System.String
Column2 = System.String
Column3 = System.Double
Column4 = System.Double
Column5 = System.String