Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Membaca Data dan Cari Format E-mel Khusus dalam Fail Excel Menggunakan C#?

Bagaimana untuk Membaca Data dan Cari Format E-mel Khusus dalam Fail Excel Menggunakan C#?

Susan Sarandon
Lepaskan: 2025-01-11 16:22:46
asal
813 orang telah melayarinya

How to Read Data and Find Specific Email Formats in Excel Files Using C#?

Mengekstrak dan Mengesahkan Alamat E-mel daripada Excel dengan C#

Panduan ini menunjukkan cara membaca data daripada fail Excel menggunakan C#, memfokuskan pada mengekstrak dan mengesahkan alamat e-mel dengan cekap. Proses ini melibatkan membuka fail Excel, mengulangi sel untuk mencari alamat e-mel dan mengesahkan formatnya.

Mengakses Fail Excel:

Coretan kod yang disediakan menggunakan Excel.Workbooks.Open untuk membuka fail Excel. Untuk prestasi optimum dan pengurusan sumber, pastikan anda menentukan akses baca sahaja dan mengendalikan kemungkinan ralat:

<code class="language-csharp">string filePath = s.Text; // Replace 's.Text' with your file path.
try
{
    Excel.Workbook workbook = ExcelObj.Workbooks.Open(filePath, ReadOnly: true, UpdateLinks: false);
    // ... further processing ...
}
catch (Exception ex)
{
    // Handle exceptions, such as file not found or access denied.
    Console.WriteLine($"Error opening Excel file: {ex.Message}");
}</code>
Salin selepas log masuk

Mencari dan Mengekstrak Alamat E-mel:

Untuk mengesan alamat e-mel dengan cekap, ulang melalui UsedRange setiap lembaran kerja. Ungkapan biasa menyediakan cara yang mantap untuk mengesahkan format e-mel:

<code class="language-csharp">using System.Text.RegularExpressions;

// ... (previous code) ...

foreach (Excel.Worksheet worksheet in workbook.Worksheets)
{
    foreach (Excel.Range cell in worksheet.UsedRange)
    {
        string cellValue = cell.Value2?.ToString();
        if (!string.IsNullOrEmpty(cellValue))
        {
            // Regular expression for email validation (adjust as needed)
            string emailRegex = @"\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b";
            Match match = Regex.Match(cellValue, emailRegex);
            if (match.Success)
            {
                string emailAddress = match.Value;
                // Process the validated email address
                Console.WriteLine($"Found email: {emailAddress}");
            }
        }
    }
}

// ... (rest of the code) ...</code>
Salin selepas log masuk

Pengendalian dan Pembersihan Data yang Cekap:

Sifat Value2 menyediakan nilai sel mentah, mengelakkan potensi isu pemformatan. Ingat untuk membuang objek Excel dengan betul untuk mengelakkan kebocoran sumber:

<code class="language-csharp">// ... (previous code) ...

workbook.Close(SaveChanges: false); // Close without saving changes.
ExcelObj.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(ExcelObj);
workbook = null;
ExcelObj = null;
GC.Collect(); // Force garbage collection.</code>
Salin selepas log masuk

Pendekatan Alternatif:

Walaupun kaedah ini menggunakan objek Excel COM, pertimbangkan alternatif seperti EPPlus atau ClosedXML untuk prestasi yang lebih baik dan mengurangkan kebergantungan, terutamanya apabila berurusan dengan fail besar. Perpustakaan ini menawarkan pendekatan yang lebih terurus untuk manipulasi Excel.

Pendekatan yang diperhalusi ini menggabungkan pengekstrakan data yang cekap dengan pengesahan e-mel yang mantap dan pengurusan sumber yang betul, menjadikannya penyelesaian yang lebih dipercayai dan berskala. Ingat untuk melaraskan ungkapan biasa agar sepadan dengan keperluan alamat e-mel khusus anda.

Atas ialah kandungan terperinci Bagaimana untuk Membaca Data dan Cari Format E-mel Khusus dalam Fail Excel Menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan