Този бърз урок ще ви напътства как да конвертирате 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 в 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#.