Konvertieren Sie Excel in CSV und CSV in Excel mit C++

Excel ist ein beliebtes Format zum Teilen von Informationen. Es kann vorkommen, dass Sie Daten in einer Excel Datei (XLS oder XLSX) in eine Datenbank importieren müssen. Dazu müssten Sie die Excel Datei in das CSV Format konvertieren. Andererseits haben Sie möglicherweise Daten im CSV Format aus einer Datenbank exportiert, die Sie in einer Excel Datei weiter bearbeiten müssen. In solchen Fällen müssten Sie die CSV Datei in das Excel Format konvertieren. In diesem Artikel erfahren Sie, wie Sie diese beiden Konvertierungen programmgesteuert mit C++ durchführen.

C++-API zum Konvertieren von Excel Dateien in CSV und CSV Dateien in das Excel Format

Aspose.Cells for C++ ist eine native C++ Bibliothek, mit der Sie Excel Dateien erstellen, lesen und ändern können. Darüber hinaus unterstützt die API die Konvertierung von Excel Dateien in das CSV Format und umgekehrt. Sie können die API entweder über NuGet installieren oder direkt aus dem Abschnitt Downloads herunterladen.

PM> Install-Package Aspose.Cells.Cpp

Konvertieren von Excel Dateien in das CSV Format mit C++

Das Konvertieren von Excel Dateien in das CSV Format ist mit Aspose.Cells for C++ API ein Kinderspiel. Im Folgenden finden Sie die Schritte zum Konvertieren von Excel Dateien in das CSV Format mit C++.

Im Folgenden finden Sie den Beispielcode zum Konvertieren von Excel Dateien in das CSV-Format.

// Quellverzeichnispfad.
StringPtr srcDir = new String("SourceDirectory\\");

// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");

// Laden Sie die Eingabe-Excel Datei
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Speichern Sie die CSV-Ausgabedatei
workbook->Save(outDir->StringAppend(new String("Sample1_out.csv")), SaveFormat_CSV);

Konvertieren Sie Excel-Arbeitsblätter in CSV Dateien

Das vorherige Beispiel konvertiert nur das erste Arbeitsblatt, wenn die Excel Datei mehrere Arbeitsblätter enthält. Falls Sie mehrere Arbeitsblätter in das CSV Format konvertieren möchten, können Sie die folgenden Schritte ausführen.

Im Folgenden finden Sie den Beispielcode zum Konvertieren von Excel Arbeitsblättern in CSV Dateien mit C++.

// Quellverzeichnispfad.
StringPtr srcDir = new String("SourceDirectory\\");

// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");

// Laden Sie die Excel Datei
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// Rufen Sie die Arbeitsblätter der Arbeitsmappe ab.
intrusive_ptr<IWorksheetCollection> sheets = workbook->GetIWorksheets();

// Erstellen Sie ein String-Builder objekt für String-Verkettungen.
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> stringBuilder = new Aspose::Cells::Systems::Text::StringBuilder();

for (int sheet = 0; sheet < sheets->GetCount(); sheet++)
{
	// Rufen Sie das zu kopierende Arbeitsblatt ab
	intrusive_ptr<IWorksheet> worksheet = sheets->GetObjectByIndex(sheet);

	// Erstellen Sie eine Instanz der IWorkbook Klasse, um die neue Arbeitsmappe darzustellen
	intrusive_ptr<IWorkbook> newWorkbook = Factory::CreateIWorkbook();

	// Kopieren Sie das zuvor abgerufene Arbeitsblatt in die neue Arbeitsmappe
	newWorkbook->GetIWorksheets()->GetObjectByIndex(0)->Copy(worksheet);

	// Löschen Sie den String-Builder und erstellen Sie einen Ausgabepfad mit String-Verkettungen.
	stringBuilder->Clear();
	stringBuilder->Append(outDir);
	stringBuilder->Append((StringPtr)new String("Sample1_sheet_"));
	stringBuilder->Append(sheet);
	stringBuilder->Append((StringPtr)new String("_out.csv"));

	// Speichern Sie die CSV-Ausgabedatei
	newWorkbook->Save(stringBuilder->ToString(), SaveFormat_CSV);
}

Konvertieren von CSV Dateien in das Excel Format mit C++

Im Folgenden finden Sie die Schritte zum Konvertieren von CSV Dateien in das Excel Format mit C++.

Im Folgenden finden Sie den Beispielcode zum Konvertieren von CSV Dateien in das Excel Format mit C++.

// Quellverzeichnispfad.
StringPtr srcDir = new String("SourceDirectory\\");

// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");

// CSV-LoadOptions objekt erstellen
intrusive_ptr<ILoadOptions> loadOptions = Factory::CreateILoadOptions(LoadFormat_CSV);

// Laden Sie die Eingabe-Excel Datei
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.csv")), loadOptions);

// Speichern Sie die CSV-Ausgabedatei
workbook->Save(outDir->StringAppend(new String("Sample1_out.xlsx")), SaveFormat_Xlsx);

Holen Sie sich eine kostenlose Lizenz

Sie können die API ohne Evaluierungseinschränkungen testen, indem Sie eine kostenlose temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie mit C++ Excel Dateien in das CSV Format und CSV Dateien in das Excel Format (XLS/XLSX) konvertieren. Aspose.Cells for C++ ist eine umfangreiche API, die viele zusätzliche Funktionen für die Arbeit mit Excel Dateien bietet. Sie können die API im Detail erkunden, indem Sie die offizielle Dokumentation verwenden. Bei Fragen können Sie uns gerne in unserem kostenlosen Support-Forum erreichen.

Siehe auch