คุณสามารถอ่านไฟล์ Excel เพื่อแยกวิเคราะห์ข้อมูลจากแถวและคอลัมน์ของแผ่นงาน Excel ใน XLSX XLS หรือรูปแบบอื่นๆ ที่เกี่ยวข้องใน C# การแยกข้อมูลจากไฟล์ Excel และใช้ในแอปพลิเคชัน C# ของคุณจะเป็นประโยชน์ ดังนั้น โพสต์ในบล็อกนี้จะอธิบายวิธีการอ่านไฟล์ Excel ใน C# ทีละขั้นตอน
เหตุใดจึงอ่านไฟล์ Excel ใน C#
ไฟล์ Excel เป็นวิธีที่แพร่หลายในการจัดเก็บข้อมูลแบบตารางเนื่องจากอินเทอร์เฟซที่ใช้งานง่ายและมีความยืดหยุ่น ในขอบเขตของการเขียนโปรแกรม C# การดึงข้อมูลจากไฟล์ Excel มอบโอกาสในการทำงานอัตโนมัติ ทำการวิเคราะห์ข้อมูล และผสานรวมกับแอปพลิเคชันจำนวนมาก กระบวนการนี้มีความสำคัญในสถานการณ์ที่ต้องดึงข้อมูลจากไฟล์เหล่านี้เพื่อการรายงาน การวิเคราะห์ หรือการประมวลผลเพิ่มเติม
อ่านไฟล์ Excel ใน C#
คุณสามารถอ่านข้อมูลจากแผ่นงาน Excel ได้อย่างง่ายดาย เพียงทำตามขั้นตอนด้านล่างเพื่ออ่านไฟล์ Excel ใน C#:
- กำหนดค่า Conholdate.Total for .NET ในสภาพแวดล้อมของคุณ
- โหลดไฟล์ Excel ต้นฉบับด้วยวัตถุของคลาสสมุดงาน
- เข้าถึงแผ่นงานทั้งหมดด้วยคุณสมบัติแผ่นงาน
- วนซ้ำแต่ละแผ่นงานด้วย For loop
- วนซ้ำแต่ละแถวและแยกค่าในแต่ละคอลัมน์
- พิมพ์ค่าเซลล์ไปยังคอนโซลหรือใช้ตามความต้องการของคุณ
โค้ดตัวอย่างด้านล่างสาธิตวิธีการอ่านไฟล์ Excel ใน C#:
// โหลดไฟล์ Excel
Workbook wb = new Workbook("excel.xlsx");
// รับใบงานทั้งหมด
WorksheetCollection collection = wb.Worksheets;
// วนซ้ำแผ่นงานทั้งหมด
for (int worksheetIndex = 0; worksheetIndex < collection.Count; worksheetIndex++)
{
// รับแผ่นงานโดยใช้ดัชนี
Worksheet worksheet = collection[worksheetIndex];
// พิมพ์ชื่อแผ่นงาน
Console.WriteLine("Worksheet: " + worksheet.Name);
// รับจำนวนแถวและคอลัมน์
int rows = worksheet.Cells.MaxDataRow;
int cols = worksheet.Cells.MaxDataColumn;
// วนซ้ำเป็นแถว
for (int i = 0; i < rows; i++)
{
// วนซ้ำแต่ละคอลัมน์ในแถวที่เลือก
for (int j = 0; j < cols; j++)
{
// กำลังแยกค่าเซลล์
Console.Write(worksheet.Cells[i, j].Value + " | ");
}
// พิมพ์ตัวแบ่งบรรทัด
Console.WriteLine(" ");
}
}
อ่านข้อมูล Excel จากแผ่นงานเฉพาะใน C#
บางครั้งคุณอาจต้องแยกข้อมูลเฉพาะออกจากเวิร์กชีท แทนที่จะประมวลผลทั้งเวิร์กบุ๊กที่มีหลายแผ่น โปรดทำตามขั้นตอนด้านล่างเพื่ออ่านข้อมูลจากไฟล์ Excel ในแผ่นงานเฉพาะโดยใช้ C#:
- ติดตั้ง Conholdate.Total for .NET ในระบบของคุณ
- สร้างอินสแตนซ์ของคลาสสมุดงาน
- เข้าถึงเวิร์กชีตใดก็ได้ในขณะที่ระบุชื่อหรือดัชนีแบบศูนย์
- รับแถวและคอลัมน์ที่มีการเติมข้อมูลล่าสุดด้วยคุณสมบัติ MaxDataRow และ MaxDataColumn
- วนซ้ำแต่ละแถวและคอลัมน์
- รับค่าเซลล์
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านข้อมูลจากแผ่นงานเฉพาะใน Excel โดยใช้ C#:
// โหลดไฟล์ Excel
Workbook wb = new Workbook("excel.xlsx");
// รับแผ่นงานโดยใช้ดัชนี
Worksheet worksheet = wb.Worksheets[0];
// พิมพ์ชื่อแผ่นงาน
Console.WriteLine("Worksheet: " + worksheet.Name);
// รับจำนวนแถวและคอลัมน์
int rows = worksheet.Cells.MaxDataRow;
int cols = worksheet.Cells.MaxDataColumn;
// วนซ้ำเป็นแถว
for (int i = 0; i < rows; i++)
{
// วนซ้ำแต่ละคอลัมน์ในแถวที่เลือก
for (int j = 0; j < cols; j++)
{
// กำลังแยกค่าเซลล์
Console.Write(worksheet.Cells[i, j].Value + " | ");
}
// พิมพ์ตัวแบ่งบรรทัด
Console.WriteLine(" ");
}
แนวทางปฏิบัติที่ดีที่สุดสำหรับการอ่านไฟล์ Excel ใน C#
การจัดการข้อผิดพลาด: จัดการกับข้อยกเว้นที่อาจเกิดขึ้นขณะอ่านไฟล์ Excel เสมอ เช่น ไม่พบไฟล์ ปัญหาเกี่ยวกับรูปแบบไฟล์ หรือปัญหาสิทธิ์ในการเข้าถึง
การจัดการหน่วยความจำ: กำจัดวัตถุอย่างเหมาะสมเพื่อหลีกเลี่ยงการรั่วไหลของหน่วยความจำ
การเพิ่มประสิทธิภาพประสิทธิภาพ: ใช้วิธีการที่เหมาะสมเพื่ออ่านข้อมูลอย่างมีประสิทธิภาพ โดยเฉพาะอย่างยิ่งเมื่อต้องจัดการกับไฟล์ Excel ขนาดใหญ่
การตรวจสอบข้อมูล: ตรวจสอบและฆ่าเชื้อข้อมูลที่อ่านจาก Excel เพื่อให้มั่นใจถึงความสมบูรณ์และความน่าเชื่อถือ
ใบอนุญาตการประเมินผลฟรี
คุณสามารถรับ [ใบอนุญาตชั่วคราวฟรี] ได้ 4 เพื่อประเมินฟีเจอร์ API ให้เต็มประสิทธิภาพ
ห่อ
ในโลกของการพัฒนาซอฟต์แวร์ การจัดการและจัดการข้อมูลถือเป็นงานพื้นฐาน ไฟล์ Excel ที่มีการนำไปใช้อย่างแพร่หลายในการจัดเก็บและจัดระเบียบข้อมูล เป็นรูปแบบทั่วไปที่พบในแอปพลิเคชันต่างๆ โพสต์ในบล็อกนี้ได้กล่าวถึงวิธีการต่างๆ ในการอ่านไฟล์ Excel ในภาษา C# เช่น การแยกวิเคราะห์ข้อมูลทั้งหมดจากสเปรดชีต หรือการทำงานกับเวิร์กชีทเฉพาะตามความต้องการของคุณ ในกรณีที่มีข้อสงสัยใด ๆ โปรดเขียนถึงเราที่ ฟอรั่ม
คำถามที่พบบ่อย
ฉันสามารถใช้ C# เพื่ออ่านรูปแบบไฟล์ Excel ทั้ง .xls เก่าและใหม่กว่า .xlsx ได้หรือไม่
ใช่ ไลบรารี C# เช่น Conholdate.Total สามารถรองรับทั้งรูปแบบ .xls เก่าและใหม่กว่า .xlsx อย่างไรก็ตาม ขอแนะนำให้ใช้งานไฟล์ .xlsx ทุกครั้งที่เป็นไปได้ เนื่องจากมีการปรับปรุงคุณสมบัติและประสิทธิภาพ
เป็นไปได้ไหมที่จะอ่านไฟล์ Excel โดยไม่ต้องติดตั้ง Microsoft Excel บนระบบ?
ใช่ คุณไม่จำเป็นต้องติดตั้ง Microsoft Excel เพื่ออ่านข้อมูลจากแผ่นงาน Excel ใน C#
ฉันสามารถอ่านข้อมูลจากแผ่นงานและเซลล์เฉพาะในไฟล์ Excel โดยใช้ C# ได้หรือไม่
ได้ คุณสามารถอ่านข้อมูลจากแผ่นงานและเซลล์ที่ต้องการในไฟล์ Excel ได้ เพียงดึงข้อมูลจากเวิร์กชีตและเซลล์ที่ต้องการโดยใช้ชื่อหรือพิกัด
ฉันจะตรวจสอบข้อมูลที่อ่านจากไฟล์ Excel เพื่อให้มั่นใจถึงความสมบูรณ์ได้อย่างไร
ในการตรวจสอบข้อมูล คุณสามารถตรวจสอบประเภทข้อมูล ช่วง และข้อจำกัดได้ตามความต้องการของแอปพลิเคชันของคุณ ตรวจสอบว่าข้อมูลเป็นไปตามรูปแบบและข้อจำกัดที่คุณคาดหวังก่อนใช้งาน