Konversi Excel ke CSV dan CSV ke Excel menggunakan C++

Excel adalah format populer untuk berbagi informasi. Anda mungkin menemukan diri Anda dalam situasi di mana Anda memiliki data dalam file Excel(XLS atau XLSX) yang perlu Anda impor ke database. Untuk ini, Anda perlu mengonversi file Excel ke format CSV. Di sisi lain, Anda mungkin memiliki data dalam format CSV yang diekspor dari database yang perlu Anda manipulasi lebih lanjut dalam file Excel. Untuk kasus seperti itu, Anda perlu mengonversi file CSV ke format Excel. Dalam artikel ini, Anda akan mempelajari cara melakukan kedua konversi ini secara terprogram menggunakan C++.

C++ API untuk Mengonversi File Excel menjadi file CSV dan CSV ke Format Excel

Aspose.Cells for C++ adalah pustaka C++ asli yang memungkinkan Anda membuat, membaca, dan memodifikasi file Excel. Selain itu, API mendukung konversi file Excel ke format CSV dan sebaliknya. Anda dapat menginstal API melalui NuGet atau mengunduhnya langsung dari bagian Unduhan.

PM> Install-Package Aspose.Cells.Cpp

Konversi file Excel ke format CSV menggunakan C++

Mengonversi file Excel ke format CSV sangat mudah dengan Aspose.Cells for C++ API. Berikut adalah langkah-langkah untuk mengkonversi file Excel ke format CSV menggunakan C++.

Berikut ini adalah contoh kode untuk mengkonversi file Excel ke format CSV.

// Jalur direktori sumber.
StringPtr srcDir = new String("SourceDirectory\\");

// Jalur direktori keluaran.
StringPtr outDir = new String("OutputDirectory\\");

// Muat file Excel masukan
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Simpan file CSV keluaran
workbook->Save(outDir->StringAppend(new String("Sample1_out.csv")), SaveFormat_CSV);

Konversikan Lembar Kerja Excel ke file CSV

Contoh sebelumnya hanya mengonversi lembar kerja pertama jika file Excel berisi beberapa lembar kerja. Jika Anda ingin mengonversi beberapa lembar kerja ke format CSV, Anda dapat mengikuti langkah-langkah berikut.

Berikut ini adalah contoh kode untuk mengubah lembar kerja Excel menjadi file CSV menggunakan C++.

// Jalur direktori sumber.
StringPtr srcDir = new String("SourceDirectory\\");

// Jalur direktori keluaran.
StringPtr outDir = new String("OutputDirectory\\");

// Muat file Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Ambil lembar kerja dari buku kerja.
intrusive_ptr<IWorksheetCollection> sheets = workbook->GetIWorksheets();

// Buat objek pembuat string untuk penggabungan string.
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> stringBuilder = new Aspose::Cells::Systems::Text::StringBuilder();

for (int sheet = 0; sheet < sheets->GetCount(); sheet++)
{
	// Ambil lembar kerja untuk disalin
	intrusive_ptr<IWorksheet> worksheet = sheets->GetObjectByIndex(sheet);

	// Buat instance kelas IWorkbook untuk mewakili buku kerja baru
	intrusive_ptr<IWorkbook> newWorkbook = Factory::CreateIWorkbook();

	// Salin lembar kerja yang diambil sebelumnya ke buku kerja baru
	newWorkbook->GetIWorksheets()->GetObjectByIndex(0)->Copy(worksheet);

	// Hapus pembuat string dan buat jalur keluaran dengan rangkaian string.
	stringBuilder->Clear();
	stringBuilder->Append(outDir);
	stringBuilder->Append((StringPtr)new String("Sample1_sheet_"));
	stringBuilder->Append(sheet);
	stringBuilder->Append((StringPtr)new String("_out.csv"));

	// Simpan file CSV keluaran
	newWorkbook->Save(stringBuilder->ToString(), SaveFormat_CSV);
}

Konversi file CSV ke format Excel menggunakan C++

Berikut langkah-langkah untuk mengkonversi file CSV ke format Excel menggunakan C++.

Berikut adalah contoh kode untuk mengkonversi file CSV ke format Excel menggunakan C++.

// Jalur direktori sumber.
StringPtr srcDir = new String("SourceDirectory\\");

// Jalur direktori keluaran.
StringPtr outDir = new String("OutputDirectory\\");

// Buat objek CSV LoadOptions
intrusive_ptr<ILoadOptions> loadOptions = Factory::CreateILoadOptions(LoadFormat_CSV);

// Muat file Excel masukan
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.csv")), loadOptions);

// Simpan file CSV keluaran
workbook->Save(outDir->StringAppend(new String("Sample1_out.xlsx")), SaveFormat_Xlsx);

Dapatkan Lisensi Gratis

Anda dapat mencoba API tanpa batasan evaluasi dengan meminta lisensi sementara gratis.

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara mengonversi file Excel ke format CSV dan file CSV ke format Excel (XLS/XLSX) menggunakan C++. Aspose.Cells for C++ adalah API luas yang menyediakan banyak fitur tambahan untuk bekerja dengan file Excel. Anda dapat menjelajahi API secara mendetail dengan menggunakan dokumentasi resmi. Jika ada pertanyaan, jangan ragu untuk menghubungi kami di forum dukungan gratis.

Lihat juga