В этом кратком руководстве вы узнаете, как преобразовать DataTable в Excel на C#. Сначала мы создадим DataTable, а затем импортируем его на рабочий лист вновь созданного объекта рабочей книги с помощью функции ImportData класса WorkSheet.Cells. После записи данных DataTable в Excel на C# мы сохраним их как файл XLSX на диске.
Действия по преобразованию DataTable в Excel в C#
- С помощью диспетчера пакетов NuGet добавьте Aspose.Cells for .NET, чтобы импортировать DataTable в Excel.
- Создайте экземпляр пустой Workbook для экспорта в нее DataTable.
- Создайте и инициализируйте DataTable для записи в файл Excel
- Объявить объект класса ImportTableOptions для установки параметров при импорте данных из DataTable
- Получить ссылку на первый лист во вновь созданной книге
- Вызовите функцию Cells.ImportData в классе WorkSheet, чтобы импортировать DataTable.
- Сохраните результирующую рабочую книгу с данными из DataTable.
Эти шаги описывают процесс экспорта данных из DataTable в Excel в C# пошагово, так что сначала создается пустая рабочая книга, а затем инициализируется DataTable и заполняется некоторыми фиктивными данными. Создается объект класса ImportTableOptions, который содержит множество параметров, которые можно задавать, однако здесь используются параметры по умолчанию. В конце DataTable импортируется на первый лист рабочей книги в указанной начальной ячейке.
Код для экспорта данных DataTable в Excel на С#
using System; | |
using System.Data; | |
using Aspose.Cells; | |
namespace ConvertDataTableToExcelInCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Use Aspose.Cells license to remove trial version watermark from the Excel file after exporting DataTable | |
License licenseForCells = new License(); | |
licenseForCells.SetLicense("Aspose.Cells.lic"); | |
// Create an object of a workbook to export DataTable | |
Workbook workbookForDataTable = new Workbook(); | |
// Create a sample DataTable for the student | |
DataTable studentTable = new DataTable("Student"); | |
// Add multiple columns in the newly created DataTable | |
studentTable.Columns.Add("Roll No", typeof(long)); | |
studentTable.Columns.Add("Age", typeof(short)); | |
studentTable.Columns.Add("Name", typeof(string)); | |
// Create a new row for adding to the data table | |
DataRow studentRecord = studentTable.NewRow(); | |
// Set the fields data in the row | |
studentRecord["Roll No"] = 1002; | |
studentRecord["Age"] = 19; | |
studentRecord["Name"] = "Alfred Keam"; | |
// Add this newly created record into the student table | |
studentTable.Rows.Add(studentRecord); | |
// Create another row for the student table | |
studentRecord = studentTable.NewRow(); | |
// Set data in the newly created row | |
studentRecord["Roll No"] = 1003; | |
studentRecord["Age"] = 20; | |
studentRecord["Name"] = "Bernadette Thares"; | |
// Add this record to the student table | |
studentTable.Rows.Add(studentRecord); | |
// Instantiate an object of ImportTableOptions for controlling the import of DataTable into Excel | |
ImportTableOptions importOptions = new ImportTableOptions(); | |
// Get reference to the first worksheet in the workbook | |
Worksheet dataTableWorksheet = workbookForDataTable.Worksheets[0]; | |
// Call the ImportData function to import DataTable starting from cell A1 described by row 0 and column 0 | |
dataTableWorksheet.Cells.ImportData(studentTable, 0, 0, importOptions); | |
// Set the columns width so that entire data is visible within the cell | |
dataTableWorksheet.AutoFitColumns(); | |
// Save the output workbook on the disc | |
workbookForDataTable.Save("DataTableImported.xlsx"); | |
} | |
} | |
} |
В этом коде ImportTableOptions используется с настройками по умолчанию, однако вы можете установить различные параметры, такие как список из 0 номеров столбцов на основе индекса, данные которых должны быть импортированы из DataTable, установить формат даты, установить общее количество строк и столбцов. импортные и многие другие. Вы также можете решить, следует ли импортировать заголовки столбцов.
В этом кратком руководстве объясняется, как в C# создать файл Excel из DataTable. Если вы хотите узнать об обратном процессе, таком как преобразование Excel в DataTable, обратитесь к статье как преобразовать Excel в DataTable в С#.