Menguasai Pengekstrakan Data Excel dengan C#
Mengendalikan fail Excel dalam C# dengan cekap memerlukan pemahaman yang jelas tentang julat yang dinamakan. Daripada bergantung pada pengindeksan tatasusunan, manfaatkan kaedah get_Range()
untuk pemilihan sel yang tepat.
Contohnya, untuk mengakses sel A1:
Excel.Worksheet sheet = workbook.Sheets["Sheet1"] as Excel.Worksheet; Excel.Range range = sheet.get_Range("A1", Missing.Value);
range
kini mewakili sel A1. Akses kandungannya menggunakan:
range.Text
: Memaparkan teks terformat sel.range.Value2
: Mendapatkan semula nilai sel asas (tidak berformat).Mengulang melalui julat sel:
Excel.Range range = sheet.get_Range("A1:A5", Missing.Value); if (range != null) { foreach (Excel.Range r in range) { string userText = r.Text; object cellValue = r.Value2; //Note: object type for flexibility } }
Yang penting, gunakan Value2
dan bukannya Value
untuk mengelakkan kemungkinan pengehadan C#.
Pembersihan Penting
Cegah kebocoran memori dengan melepaskan objek COM selepas digunakan:
if (wkb != null) ExcelTools.OfficeUtil.ReleaseRCM(wkb); if (excel != null) ExcelTools.OfficeUtil.ReleaseRCM(excel);
ReleaseRCM
ialah fungsi tersuai untuk mengeluarkan sumber COM.
Snippet Kod Ilustrasi
using ExcelTools = Ms.Office; // Assuming a custom namespace using Excel = Microsoft.Office.Interop.Excel; ... Excel.Workbook wkb = ExcelTools.OfficeUtil.OpenBook(excel, file); ... Excel.Worksheet sheet = wkb.Sheets["Data"] as Excel.Worksheet; Excel.Range range = sheet.get_Range("A1", Missing.Value); string cellA1Text = range.Text.ToString(); ...
Pertimbangan Utama
false
.Type.Missing
C# untuk parameter pilihan.Pendekatan yang dipertingkatkan ini memastikan pengendalian data Excel yang cekap dan boleh dipercayai dalam aplikasi C# anda.
Atas ialah kandungan terperinci Bagaimana untuk Membaca Data dengan Cekap dari Fail Excel Menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!