การส่งออกค่าสตริง HTML ของเซลล์ไปยัง DataTable ใน Excel

การแนะนำ

เมื่อทำงานกับไฟล์ Excel ในสภาพแวดล้อม .NET คุณอาจพบว่าคุณต้องดึงข้อมูลจากเซลล์ ไม่ใช่เพียงแค่ข้อความธรรมดา แต่เป็นสตริง HTML ซึ่งอาจมีประโยชน์มากเมื่อคุณกำลังจัดการกับข้อมูลข้อความที่หลากหลายหรือเมื่อคุณต้องการรักษาการจัดรูปแบบ ในคู่มือนี้ ฉันจะแนะนำคุณเกี่ยวกับการส่งออกค่าสตริง HTML ของเซลล์ไปยัง DataTable โดยใช้ Aspose.Cells สำหรับ .NET

ข้อกำหนดเบื้องต้น

ก่อนจะเริ่มเขียนโค้ด เรามาตรวจสอบก่อนว่าคุณมีทุกอย่างที่จำเป็นแล้ว นี่คือรายการตรวจสอบด่วน:

  1. ความรู้พื้นฐานเกี่ยวกับ C# และ .NET: ก่อนที่จะเริ่มเขียนโค้ด ให้แน่ใจว่าคุณมีความคุ้นเคยกับการเขียนโปรแกรม C# และพื้นฐานของกรอบงาน .NET
  2. Aspose.Cells สำหรับ .NET: หากคุณยังไม่ได้ติดตั้ง Aspose.Cells สำหรับ .NET คุณสามารถดาวน์โหลดรุ่นทดลองใช้งานฟรีได้จากที่นี่.
  3. Visual Studio หรือ IDE ที่คุณเลือก: ตั้งค่าสภาพแวดล้อมของคุณเพื่อเขียนโค้ด C# Visual Studio ได้รับการแนะนำเนื่องจากมีคุณสมบัติมากมายและใช้งานง่าย
  4. ไฟล์ตัวอย่าง Excel: คุณจะต้องมีไฟล์ตัวอย่าง Excel (sampleExportTableAsHtmlString.xlsx) เพื่อใช้งาน ให้แน่ใจว่าอยู่ในไดเร็กทอรีที่สามารถเข้าถึงได้
  5. ตัวจัดการแพ็กเกจ NuGet: ตรวจสอบให้แน่ใจว่าคุณสามารถเข้าถึงตัวจัดการแพ็กเกจ NuGet ในโปรเจ็กต์ของคุณได้เพื่อเพิ่มไลบรารี Aspose.Cells ได้อย่างง่ายดาย

เมื่อตรวจสอบข้อกำหนดเบื้องต้นเหล่านี้แล้ว เรามาเริ่มเขียนโค้ดกันเลย!

แพ็คเกจนำเข้า

ก่อนที่เราจะเริ่มทำงานกับ Aspose.Cells เราจะต้องนำเข้าแพ็คเกจที่จำเป็น ซึ่งโดยปกติแล้วจะต้องเพิ่มแพ็คเกจ Aspose.Cells NuGet ลงในโปรเจ็กต์ของคุณ วิธีดำเนินการมีดังนี้:

เปิดตัวจัดการแพ็กเกจ NuGet

ใน Visual Studio ให้คลิกขวาที่โปรเจ็กต์ของคุณใน Solution Explorer และเลือกจัดการแพ็คเกจ NuGet

ค้นหา Aspose.Cells

ในตัวจัดการแพ็กเกจ NuGet พิมพ์Aspose.Cells ในแถบค้นหา

ติดตั้งแพ็คเกจ

เมื่อคุณพบ Aspose.Cells แล้ว ให้คลิกที่ปุ่ม Install การดำเนินการนี้จะเพิ่มไลบรารีลงในโปรเจ็กต์ของคุณ และให้คุณนำเข้าไลบรารีนั้นในโค้ดของคุณได้

นำเข้าเนมสเปซ

เพิ่มคำสั่ง using ต่อไปนี้ที่ด้านบนของไฟล์โค้ดของคุณ:

using System;
using System.IO;
using Aspose.Cells;
using System.Data;

ตอนนี้เราได้ตั้งค่าทุกอย่างเรียบร้อยแล้ว มาดูกระบวนการทีละขั้นตอนในการส่งออกค่าสตริง HTML จากไฟล์ Excel ไปยัง DataTable กัน

ขั้นตอนที่ 1: กำหนดไดเรกทอรีแหล่งที่มา

คุณจะเริ่มต้นด้วยการกำหนดไดเรกทอรีที่เก็บไฟล์ Excel ตัวอย่างของคุณ ซึ่งเป็นสิ่งสำคัญมาก เนื่องจากไดเรกทอรีนี้จะแจ้งให้แอปพลิเคชันของคุณทราบว่าจะค้นหาไฟล์ได้จากที่ใด นี่คือโค้ดสำหรับไดเรกทอรีดังกล่าว:

string sourceDir = "Your Document Directory";

อย่าลืมเปลี่ยน"Your Document Directory" พร้อมเส้นทางจริงไปยังไฟล์ Excel ของคุณ

ขั้นตอนที่ 2: โหลดไฟล์ตัวอย่าง Excel

ขั้นตอนต่อไปคือการโหลดเวิร์กบุ๊ก Excel คุณจะใช้Workbook คลาสจาก Aspose.Cells เพื่อทำสิ่งนี้ คุณสามารถโหลดไฟล์ได้ดังนี้:

Workbook wb = new Workbook(sourceDir + "sampleExportTableAsHtmlString.xlsx");

บรรทัดโค้ดที่เรียบง่ายนี้จะเริ่มต้นเวิร์กบุ๊กและโหลดไฟล์ Excel ที่ระบุ

ขั้นตอนที่ 3: เข้าถึงเวิร์กชีตแรก

เมื่อโหลดเวิร์กบุ๊กแล้ว คุณจะต้องการเข้าถึงเวิร์กชีตเฉพาะที่มีข้อมูลที่คุณสนใจ โดยทั่วไป คุณจะเริ่มต้นด้วยเวิร์กชีตแรก:

Worksheet ws = wb.Worksheets[0];

ที่นี่ เรากำลังทำงานกับเวิร์กชีตแรก (ดัชนี 0) ตรวจสอบให้แน่ใจว่าข้อมูลของคุณอยู่ในชีตที่ถูกต้อง

ขั้นตอนที่ 4: ระบุตัวเลือกตารางการส่งออก

เพื่อควบคุมวิธีการส่งออกข้อมูล คุณต้องตั้งค่าExportTableOptionsในกรณีนี้ คุณต้องการให้แน่ใจว่าชื่อคอลัมน์จะไม่ถูกส่งออก และคุณต้องการให้ข้อมูลเซลล์ถูกส่งออกเป็นสตริง HTML:

ExportTableOptions opts = new ExportTableOptions();
opts.ExportColumnName = false;
opts.ExportAsHtmlString = true;

การกำหนดค่านี้ช่วยให้คุณรักษาการจัดรูปแบบข้อมูลเซลล์ที่สมบูรณ์เมื่อส่งออก

ขั้นตอนที่ 5: ส่งออกเซลล์ไปยัง DataTable

ตอนนี้มาถึงส่วนสำคัญที่คุณต้องส่งออกข้อมูล โดยใช้ExportDataTable วิธีการนี้คุณสามารถดึงข้อมูลจากเวิร์กชีตลงในDataTableวิธีการทำมีดังต่อไปนี้:

DataTable dt = ws.Cells.ExportDataTable(0, 0, 3, 3, opts);

โค้ดนี้จะส่งออกช่วงเซลล์ที่ระบุ (จากแถว 0 คอลัมน์ 0 ถึงแถว 3 คอลัมน์ 3) ลงใน DataTable โดยใช้ตัวเลือกที่ระบุไว้ก่อนหน้านี้

ขั้นตอนที่ 6: พิมพ์ค่าสตริง HTML

สุดท้ายนี้ ให้พิมพ์ค่าสตริง HTML จากเซลล์ที่ระบุใน DataTable เพื่อดูว่าเราส่งออกข้อมูลอะไรไปได้บ้าง ตัวอย่างเช่น หากคุณต้องการพิมพ์ค่าจากแถวที่สามและคอลัมน์ที่สอง คุณต้องทำดังต่อไปนี้:

Console.WriteLine(dt.Rows[2][1].ToString());

บรรทัดนี้จะพิมพ์สตริง HTML ที่ต้องการจาก DataTable ลงในคอนโซล

บทสรุป

และแล้วคุณก็ทำได้! คุณได้ส่งออกค่าสตริง HTML จากเซลล์ในไฟล์ Excel ไปยัง DataTable โดยใช้ Aspose.Cells สำหรับ .NET สำเร็จแล้ว ความสามารถนี้ไม่เพียงแต่ช่วยเพิ่มทักษะการจัดการข้อมูลของคุณเท่านั้น แต่ยังขยายตัวเลือกของคุณเมื่อต้องจัดการกับเนื้อหาที่จัดรูปแบบโดยตรงจากไฟล์ Excel อีกด้วย

คำถามที่พบบ่อย

ฉันสามารถใช้ Aspose.Cells สำหรับรูปแบบไฟล์อื่นนอกเหนือจาก Excel ได้หรือไม่

ใช่ Aspose.Cells นั้นออกแบบมาสำหรับ Excel เป็นหลัก แต่ Aspose ยังมีไลบรารีอื่นๆ สำหรับรูปแบบอื่นๆ อีกด้วย

ฉันต้องมีใบอนุญาตสำหรับ Aspose.Cells หรือไม่?

ใช่ ต้องมีใบอนุญาตที่ถูกต้องสำหรับการใช้ในการผลิต คุณสามารถขอใบอนุญาตชั่วคราวได้ที่นี่.

จะเกิดอะไรขึ้นหากไฟล์ Excel ของฉันมีสูตรอยู่ สูตรเหล่านั้นจะส่งออกอย่างถูกต้องหรือไม่

ใช่ Aspose.Cells สามารถจัดการสูตรได้ และเมื่อทำการส่งออก สูตรจะได้รับการประเมินเป็นค่าผลลัพธ์

สามารถเปลี่ยนตัวเลือกการส่งออกได้หรือไม่

แน่นอน! คุณสามารถปรับแต่งได้ExportTableOptions เพื่อให้เหมาะกับความต้องการเฉพาะของคุณ

ฉันสามารถหาเอกสารโดยละเอียดเพิ่มเติมเกี่ยวกับ Aspose.Cells ได้จากที่ใด

คุณสามารถค้นหาเอกสารประกอบที่ครอบคลุมได้ที่นี่.