גיליונות אלקטרוניים של MS Excel נמצאים בשימוש נרחב כדי לשמור על נתונים קטנים, בינוניים או גדולים. במקרים שונים, גיליונות אלקטרוניים פועלים כמסד נתונים לאחסון נתוני האפליקציה. במצבים כאלה, ייתכן שיהיה עליך לקרוא את הנתונים המאוחסנים בקבצי Excel מתוך יישומי האינטרנט או שולחן העבודה שלך. במקרים כאלה, מאמר זה מכסה כיצד להמיר נתוני Excel ל-DataTables ב-C#.
- C# API לייצוא נתוני Excel ל-DataTable
- Excel ל-DataTable ב-C#
- המרת נתוני Excel עם הקלדה חזקה ל-DataTable
- המר נתוני Excel ללא הקלדה חזקה ל-DataTable
- קבל רישיון חינם
C# Excel to DataTable Conversion API
Aspose.Cells for .NET היא ספריית כיתה המאפשרת לך ליישם תכונות אוטומציה של Excel בתוך יישומי NET. בנוסף, ה-API מאפשר לייצא נתונים מגיליונות עבודה של Excel ל-ADO.NET DataTable תוך מספר שלבים. אתה יכול להוריד את ה-API או להתקין אותו באמצעות NuGet.
PM> Install-Package Aspose.Cells
המרת Excel ל-DataTable ב-C#
יכולים להיות שני תרחישים אפשריים בעת ייצוא נתונים מגיליונות עבודה של Excel ל-DataTables: הנתונים יכולים להיות מוקלדים בצורה חזקה או לא בהקלדה חזקה. בשני המקרים, תוכל לבצע המרה של Excel ל-DataTable בהתאם. בואו נסתכל כיצד להתמודד עם אחד מהתרחישים שהוזכרו לעיל.
המרת נתוני Excel עם הקלדה חזקה ל-DataTable ב-C#
נתונים בעלי הקלדה חזקה פירושם שהערכים בעמודה בודדת שייכים לסוג נתונים מסוים. במקרים כאלה, תוכל לייצא נתוני Excel ל-DataTable ב-C# באמצעות השלבים הבאים.
- השתמש במחלקה Workbook כדי לטעון את קובץ ה-Excel.
- קבל את גליון העבודה שברצונך לייצא באובייקט Worksheet.
- השתמש בשיטה Worksheet.Cells.ExportDataTable(int, int, int, int, bool) כדי לייצא נתונים לאובייקט DataTable.
- השתמש ב-DataTable כמקור הנתונים.
דוגמת הקוד הבאה מראה כיצד לייצא את Excel ל-DataTable.
// צור זרם קבצים המכיל את קובץ האקסל שייפתח
FileStream fstream = new FileStream("Excel.xlsx", FileMode.Open);
// הצג אובייקט של חוברת עבודה
//פתיחת קובץ האקסל דרך זרם הקבצים
Workbook workbook = new Workbook(fstream);
// גש לגליון העבודה הראשון בקובץ האקסל
Worksheet worksheet = workbook.Worksheets[0];
// ייצא את התוכן של 2 שורות ו-2 עמודות החל מהתא הראשון ל-DataTable
DataTable dataTable = worksheet.Cells.ExportDataTable(0, 0,2, 2, true);
// קשר את ה-DataTable עם DataGrid
dataGridView1.DataSource = dataTable;
// סגור את זרם הקבצים כדי לפנות את כל המשאבים
fstream.Close();
המרת נתוני Excel שאינם מוקלדים היטב ל-DataTable ב-C#
כעת, בואו נסתכל על המקרה השני שבו ערכים בגליון העבודה אינם מוקלדים היטב. זה אומר שהם לא שייכים לסוג נתונים מסוים. להלן השלבים לייצוא נתוני Excel ל-DataTable במקרה זה.
- השתמש במחלקה Workbook כדי לטעון את קובץ ה-Excel.
- בחר את גליון העבודה שברצונך לייצא באובייקט Worksheet.
- השתמש בשיטה Worksheet.Cells.ExportDataTableAsString(int, int, int, int, bool) כדי לייצא נתונים לאובייקט DataTable.
- השתמש ב-DataTable כמקור הנתונים.
דגימת הקוד הבאה מראה כיצד לייצא נתונים שאינם מוקלדים היטב מ-Excel ל-DataTable ב-C#.
// צור זרם קבצים המכיל את קובץ האקסל שייפתח
FileStream fstream = new FileStream("Excel.xlsx", FileMode.Open);
// הצג אובייקט של חוברת עבודה
//פתיחת קובץ האקסל דרך זרם הקבצים
Workbook workbook = new Workbook(fstream);
// גש לגליון העבודה הראשון בקובץ האקסל
Worksheet worksheet = workbook.Worksheets[0];
// ייצא את התוכן של 2 שורות ו-2 עמודות החל מהתא הראשון ל-DataTable
DataTable dataTable = worksheet.Cells.ExportDataTableAsString(0, 0, 2, 2, true);
// קשר את ה-DataTable עם DataGrid
dataGridView1.DataSource = dataTable;
// סגור את זרם הקבצים כדי לפנות את כל המשאבים
fstream.Close();
קבל רישיון חינם
אתה יכול לקבל רישיון זמני בחינם כדי לנסות את ה-API ללא מגבלות הערכה.
סיכום
במאמר זה, למדת כיצד לייצא או להמיר נתוני Excel ל-ADO.NET DataTables באמצעות C#. המדריך שלב אחר שלב ודוגמאות הקוד הראו כיצד להתמודד עם נתונים מוקלדים חזקים ולא חזקים בגיליונות העבודה. אתה יכול לחקור יותר על ה-C# Excel API באמצעות תיעוד.