Как да конвертирате DataTable в Excel в C#

Този бърз урок ще ви напътства как да конвертирате DataTable в Excel в C#. Първо ще създадем DataTable и след това ще го импортираме в работния лист на новосъздадения обект на работна книга с помощта на функцията ImportData на класа WorkSheet.Cells. След записване на данни от DataTable в Excel в C#, ние ще ги запазим като XLSX файл на диска.

Стъпки за конвертиране на DataTable в Excel в C#

  1. С помощта на мениджъра на пакети NuGet добавете Aspose.Cells for .NET, за да импортирате DataTable в Excel
  2. Създайте екземпляр на празна Workbook за експортиране на DataTable към нея
  3. Създайте и инициализирайте DataTable за запис във файл на Excel
  4. Декларирайте обект от клас ImportTableOptions за задаване на параметри, докато импортирате данни от DataTable
  5. Получете препратка към първия работен лист в новосъздадената работна книга
  6. Извикайте функцията Cells.ImportData в класа WorkSheet, за да импортирате DataTable
  7. Запазете получената работна книга с данни от DataTable

Тези стъпки описват процеса за експортиране на данни от DataTable в Excel в C# по стъпка по стъпка, така че първо да се създаде празната работна книга и след това да се инициализира DataTable и да се попълни с някои фиктивни данни. Създава се обект от класа ImportTableOptions, който съдържа много параметри, които могат да бъдат зададени, но тук се използват опциите по подразбиране. В крайна сметка DataTable се импортира в първия работен лист на работната книга в определена начална клетка.

Код за експортиране на данни от DataTable към Excel в C#

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 в C#.

 Български