Konversikan XML ke Excel CSharp

XML (Extensible Markup Language) mirip dengan HTML tetapi menggunakan tag yang berbeda untuk mendefinisikan objek. Ini digunakan untuk menyimpan dan mengangkut data tanpa bergantung pada perangkat lunak atau perangkat keras. Dalam kasus tertentu, kami mungkin perlu mengekspor data dari XML ke Excel (XLSX atau XLS) untuk diproses lebih lanjut. File Excel banyak digunakan untuk menyimpan dan mengatur data. Pada artikel ini, kita akan mempelajari cara mengonversi XML ke Excel menggunakan C#.

Topik-topik berikut akan dibahas dalam artikel ini:

  1. C# XML ke Excel Converter API
  2. Konversikan XML ke Excel
  3. Ekspor Kolom Tertentu dari XML ke Excel

C# XML ke Excel Converter API

Untuk mengonversi XML ke Excel, kami akan menggunakan Aspose.Cells for .NET API. Ini adalah API yang kaya fitur dan kuat yang memungkinkan melakukan fitur otomasi Excel secara terprogram tanpa memerlukan aplikasi Microsoft Excel.

Kelas Workbook API mewakili spreadsheet Excel. Ini memungkinkan pembukaan dan penyimpanan file Excel asli. Ini juga menyediakan metode untuk menyalin data dari Buku Kerja lain, menggabungkan dua Buku Kerja, dan melindungi spreadsheet Excel. Kelas ini memungkinkan pengimporan file data XML ke buku kerja menggunakan metode ImportXml(). Metode save() dari kelas ini memungkinkan penyimpanan buku kerja dalam format yang ditentukan.

Harap unduh DLL API atau instal menggunakan NuGet.

PM> Install-Package Aspose.Cells

Konversikan XML ke Excel di C#

Kami dapat dengan mudah mengonversi file data XML menjadi buku kerja Excel dengan mengikuti langkah-langkah berikut:

  1. Buat instance dari kelas Workbook.
  2. Panggil metode ImportXml() untuk mengimpor file XML.
  3. Simpan Buku Kerja sebagai file XLSX menggunakan metode Save(). Dibutuhkan jalur file keluaran sebagai argumen.

Contoh kode yang diberikan di bawah ini menunjukkan cara mengonversi XML ke Excel menggunakan C#.

// Contoh kode ini menunjukkan cara mengimpor file data XML di Excel.
// Jalur folder data
var dataDir = @"C:\Files\";

// Buat instance dari kelas Workbook
Workbook workbook = new Workbook();

// Impor XML ke buku kerja
// Dibutuhkan jalur file XML, nama lembar tujuan, baris dan kolom tujuan sebagai argumen.
workbook.ImportXml(dataDir + "Catalog.xml", "Sheet1", 0, 0);

// Simpan buku kerja sebagai XLSX
workbook.Save(dataDir + "data_xml.xlsx", Aspose.Cells.SaveFormat.Auto);
Konversikan XML ke Excel di C#

Ekspor Kolom Tertentu dari XML ke Excel di C#

Kita perlu membuat file XSLT dengan tata letak HTML untuk merender data kita dalam sebuah tabel. File XLS adalah lembar gaya yang dapat digunakan untuk mengubah dokumen XML menjadi tipe dokumen lain dan untuk memformat hasilnya. Kami hanya akan menyertakan kolom yang diperlukan dalam file XSLT untuk diubah menjadi Excel. File XLS yang akan membantu kami melakukan ini mungkin terlihat seperti ini:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:template match="/">
		<html>
			<body>
				<h2>My CD Collection</h2>
				<table border="1">
					<tr bgcolor="#9acd32">
						<th style="text-align:left">Title</th>
						<th style="text-align:left">Artist</th>
						<th style="text-align:left">Price</th>
					</tr>
					<xsl:for-each select="catalog/cd">
						<tr>
							<td>
								<xsl:value-of select="title"/>
							</td>
							<td>
								<xsl:value-of select="artist"/>
							</td>
							<td>
								<xsl:value-of select="price"/>
							</td>
						</tr>
					</xsl:for-each>
				</table>
			</body>
		</html>
	</xsl:template>
</xsl:stylesheet>

Kita bisa mendapatkan kolom tertentu dari file data XML ke dalam buku kerja Excel dengan mengikuti langkah-langkah di bawah ini:

  1. Pertama, baca file XML menggunakan metode File.ReadAllText().
  2. Selanjutnya, baca file XSLT menggunakan metode File.ReadAllText().
  3. Kemudian, ubah konten XML menggunakan instance kelas XslCompiledTransform.
  4. Setelah itu, tentukan berbagai pengaturan worksheet seperti AutoFitRows, dan AutoFitColumns.
  5. Simpan Buku Kerja sebagai file XLSX menggunakan metode Save(). Dibutuhkan jalur file keluaran sebagai argumen.

Contoh kode yang diberikan di bawah ini menunjukkan cara mengonversi kolom tertentu dari XML ke Excel menggunakan C#.

// Contoh kode ini menunjukkan cara mengimpor kolom tertentu dari file data XML di Excel.
// Jalur folder data
var dataDir = @"C:\Files\";

// Membaca konten file XML
var XmlContent = File.ReadAllText(dataDir + "Catalog.xml");

// Baca konten file XSLT
var XsltContent = File.ReadAllText(dataDir + "CatalogXSLX.xslt");

// Ubah XML dan dapatkan konten di MemoryStream
var xmlContent = TransformXml(XmlContent, XsltContent);

// Buat buku kerja
var workbook = new Workbook(xmlContent);
workbook.Worksheets[0].AutoFitRows();
workbook.Worksheets[0].AutoFitColumns();

// Simpan buku kerja sebagai XLSX
workbook.Save(dataDir + "SpecificColumnsData_xml.xlsx", Aspose.Cells.SaveFormat.Auto);
Konversikan XML ke Excel di C#

Dapatkan Lisensi Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk mencoba perpustakaan tanpa batasan evaluasi.

Kesimpulan

Pada artikel ini, kami telah mempelajari cara mengimpor data dari file XML ke Excel di C#. Kami juga telah melihat cara mengekstrak data kolom tertentu dari file XML dan mengubahnya menjadi Excel secara terprogram. Selain itu, Anda dapat mempelajari lebih lanjut tentang Aspose.Cells for .NET API menggunakan dokumentasi. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di forum.

Lihat juga