Экспорт данных из рабочего листа в .NET
Обзор
В этой статье объясняется, как экспортировать данные рабочего листа в DataTable с помощью C#. В ней рассматриваются следующие темы.
Формат: Excel
- C# Excel в DataTable
- C# Преобразовать Excel в DataTable
- C# Импорт Excel в DataTable
- C# Экспорт в DataTable из Excel
Формат: XLS
- C# XLS в DataTable
- C# Преобразование XLS в DataTable
- C# Импорт XLS в DataTable
- C# Экспорт в DataTable из XLS
Формат: XLSX
- C# XLSX в DataTable
- C# Преобразование XLSX в DataTable
- C# Импорт XLSX в DataTable
- C# Экспорт в DataTable из XLSX
Формат: ODS
- C# ODS в DataTable
- C# Преобразование ODS в DataTable
- C# Импорт ODS в DataTable
- C# Экспорт в DataTable из ODS
C# Экспорт данных Excel
Экспорт данных из рабочего листа
Aspose.Cells не только облегчает пользователям импорт данных в рабочие листы из внешних источников данных, но также позволяет им экспортировать данные своих рабочих листов вТаблица данных . Как мы знаем, чтоТаблица данных является частью ADO.NET и используется для хранения данных. Как только данные сохраняются вТаблица данных , его можно использовать любым способом в соответствии с требованиями пользователей. Разработчики также могут хранить эти данные (хранятся вТаблица данных ) непосредственно в базу данных, если они того пожелают. Итак, мы видим, что разработчикам становится проще манипулировать данными рабочего листа, если они экспортируются вТаблица данных.
Экспорт данных в DataTable с помощью Aspose.Cells
Разработчики могут легко экспортировать данные своих рабочих листов вТаблица данных объект, вызвав либоТаблица ЭкспортДанных или жеЭкспортдататаблеасстринг методCellsучебный класс. Оба метода используются в разных сценариях, которые более подробно обсуждаются ниже.
Столбцы, содержащие строго типизированные данные
Мы знаем, что электронная таблица хранит данные в виде последовательности строк и столбцов. Если все значения в столбцах рабочего листа строго типизированы (это означает, что все значения в столбце должны иметь один и тот же тип данных), мы можем экспортировать содержимое рабочего листа, вызвав методТаблица ЭкспортДанных методCells учебный класс.Таблица ЭкспортДанных метод принимает следующие параметры для экспорта данных листа какТаблица данныхобъект:
- Номер строки, номер строки данных первой ячейки будет экспортирован.
- Номер столбца, номер столбца первой ячейки, из которой будут экспортированы данные.
- Количество рядов, количество строк для экспорта.
- Число столбцов, количество столбцов для экспорта.
- Экспорт имен столбцов , логическое свойство, указывающее, следует ли экспортировать данные в первой строке рабочего листа в виде имен столбцов таблицы.Таблица данныхили не.
Шаги: экспорт данных в DataTable
- Шаги: Excel в DataTable в C#
- Шаги: Преобразование Excel в DataTable в C#
- Шаги: Импорт Excel в DataTable по номеру C#
- Шаги: Экспорт в DataTable из Excel по номеру C#
Шаги кода:
- Загрузите файл Excel вРабочая тетрадь объект.
- Рабочая тетрадь объект может загружать форматы файлов Excel, например, XLS, XLSX, XLSM, ODS и т. д.
- Доступ к первомуРабочий лист в файле Excel.
- Выберите область экспорта, например, 7 строк и 2 столбца, начиная с 1-й ячейкиТаблица данных.
- ИспользуйтеТаблица ЭкспортДанных способ экспорта данных в DataTable.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
string filePath = dataDir + "Book1.xlsx"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(filePath); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Exporting the contents of 7 rows and 2 columns starting from 1st cell to DataTable | |
DataTable dataTable = worksheet.Cells.ExportDataTable(0, 0, 11, 2, true); | |
foreach (DataRow r in dataTable.Rows) | |
{ | |
foreach (DataColumn c in dataTable.Columns) | |
{ | |
Double value = r.Field<Double>(c); | |
Console.Write(value + " "); | |
} | |
Console.WriteLine(); | |
} | |
Столбцы, содержащие не строго типизированные данные
Если все значения в столбцах рабочего листа не являются строго типизированными (это означает, что значения в столбце могут иметь разные типы данных), мы можем экспортировать содержимое рабочего листа, вызвав методЭкспортдататаблеасстринг методCells учебный класс.Экспортдататаблеасстрингметод принимает тот же набор параметров, что и методТаблица ЭкспортДанныхспособ экспорта данных рабочего листа в видеТаблица данныхобъект.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
string filePath = dataDir + "Book1.xlsx"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(filePath); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Exporting the contents of 7 rows and 2 columns starting from 1st cell to DataTable | |
DataTable dataTable = worksheet.Cells.ExportDataTableAsString(0, 0, 11, 2, true); | |
foreach (DataRow r in dataTable.Rows) | |
{ | |
foreach (DataColumn c in dataTable.Columns) | |
{ | |
string value = r.Field<string>(c); | |
Console.Write(value + " "); | |
} | |
Console.WriteLine(); | |
} |
Экспортировать диапазон с флагом, чтобы пропустить имя столбца
Данные из диапазона можно экспортировать вТаблица данных где доступен флаг для пропуска строки заголовка в экспортируемых данных. Следующий код экспортирует диапазон данных вТаблица данных с аргументомExportTableOptions который содержитИмяЭкспортКолонки флаг. Он настроен наистинный если информация заголовка есть, следовательно, она не будет включена в данные и установлена наЛОЖЬ если нет заголовка и все строки должны рассматриваться как данные.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string sourceDir = RunExamples.Get_SourceDirectory(); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(sourceDir + "Names.xlsx"); | |
// Instantiating a WorkbookDesigner object | |
WorkbookDesigner designer = new WorkbookDesigner(workbook); | |
// Accessing the range having name "Names" | |
var range = designer.Workbook.Worksheets.GetRangeByName("Names"); | |
// Instantiating the ExportTableOptions object | |
ExportTableOptions options = new ExportTableOptions(); | |
// Setting the ExportColumnName flag to true shows that first line is header and not part of data | |
options.ExportColumnName = true; | |
// Exporting data with the selected information | |
var dataTable = range.ExportDataTable(options); |
Предварительные темы
- Экспорт данных Excel в DataTable без форматирования
- Экспорт HTML строкового значения Cells в DataTable
- Экспорт данных видимых строк из рабочего листа
- Игнорировать скрытые столбцы при экспорте данных рабочего листа в таблицу данных
- Автоматическое переименование повторяющихся столбцов при экспорте данных листа