Konvertera PDF till CSV och CSV till PDF med C++

PDF-filer är ett standardformat för utbyte av dokument över internet. Det kan finnas situationer där du behöver bearbeta data i PDF-filen och lägga till den i en databas. För sådana scenarier kan det vara användbart att konvertera PDF-dokumentet till CSV-format. Å andra sidan kan du ha vissa tabelldata i CSV-format som du vill dela på ett skrivskyddat sätt med någon. Du kan uppnå detta genom att konvertera CSV-filerna till PDF-format. I den här artikeln kommer du att lära dig hur du konverterar PDF- och CSV-filer programmatiskt med C++.

C++ API för att konvertera CSV till PDF och PDF till CSV-format

För att uppnå dessa konverteringar behöver du Aspose.Cells for C++ och Aspose.PDF for C++ API:er. Det förra är ett C++-bibliotek för att skapa, läsa och ändra Excel-filer, medan det senare är ett API för att arbeta med PDF-filer. Vi kommer att använda Aspose.Cells för C++ API för att konvertera CSV-filer till PDF-format och Aspose.PDF för C++ API för att konvertera PDF-filer till CSV-format. Du kan antingen installera API:erna genom NuGet eller ladda ner dem direkt från avsnittet Nedladdningar.

PM> Install-Package Aspose.Cells.Cpp
PM> Install-Package Aspose.PDF.Cpp

Konvertera CSV-filer till PDF-format

Följande är stegen för att konvertera CSV-filer till PDF-format.

Följande är exempelkoden för att konvertera CSV-filer till PDF-format med C++.

// Källkatalogens sökväg.
StringPtr srcDir = new String("SourceDirectory\\");

// Utdatakatalogsökväg.
StringPtr outDir = new String("OutputDirectory\\");

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

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

// Spara som PDF-fil
workbook->Save(outDir->StringAppend(new String("Sample1_out.pdf")), SaveFormat_Pdf);

Konvertera en PDF-fil till CSV-format

Följande är stegen för att konvertera en PDF-fil till CSV-format.

Följande är exempelkoden för att konvertera en PDF-fil till CSV-format med C++.

// Ladda PDF-fil
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample2_csv.pdf");

// Initiera ExcelSaveOptions-klassobjekt
auto options = MakeObject<ExcelSaveOptions>();
options->ConversionEngine = ExcelSaveOptions::ConversionEngines::NewEngine;

// Ställ in sparaformat som CSV
options->set_Format(ExcelSaveOptions::ExcelFormat::CSV);

// Spara som CSV-fil
pdfDocument->Save(u"OutputDirectory\\Sample2_csv_out.csv", options);

Konvertera valda PDF-sidor till en CSV-fil

Aspose.PDF för C++ ger dig också möjligheten att inkludera specifika PDF-sidor i den konverterade CSV-filen. För att uppnå detta kan du följa följande steg.

Följande är exempelkoden för att inkludera valda PDF-sidor i CSV-filen.

// Ladda PDF-fil
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample2_csv.pdf");

// Initiera ExcelSaveOptions-klassobjekt
auto options = MakeObject<ExcelSaveOptions>();
options->ConversionEngine = ExcelSaveOptions::ConversionEngines::NewEngine;

// Ställ in sparaformat som CSV
options->set_Format(ExcelSaveOptions::ExcelFormat::CSV);

// Skapa en instans av klassen Document för att representera CSV-filen.
auto newPdfDocument = MakeObject<Document>();

for (int i = 1; i <= pdfDocument->get_Pages()->get_Count(); i++)
{
	// Skaffa de första 2 sidorna
	if (i <= 2)
	{
		// Lägg till sidan i den nya dokumentinstansen
		newPdfDocument->get_Pages()->Add(pdfDocument->get_Pages()->idx_get(i));
	}
}

// Spara som CSV-fil
newPdfDocument->Save(u"OutputDirectory\\Sample2_csv_out.csv", options);

Konvertera PDF-sidor till individuella CSV-filer

Med Aspose.PDF för C++ kan du även konvertera PDF-sidor till individuella CSV-filer. För att uppnå detta kan du följa följande steg.

Följande är exempelkoden för att konvertera PDF-sidor till enskilda CSV-filer med C++.

// Ladda PDF-fil
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample2_csv.pdf");

// Initiera ExcelSaveOptions-klassobjekt
auto options = MakeObject<ExcelSaveOptions>();
options->ConversionEngine = ExcelSaveOptions::ConversionEngines::NewEngine;

// Ställ in sparaformat som CSV
options->set_Format(ExcelSaveOptions::ExcelFormat::CSV);

for (int i = 1; i <= pdfDocument->get_Pages()->get_Count(); i++)
{
	// Skapa en instans av klassen Document för att representera CSV-filen.
	auto newPdfDocument = MakeObject<Document>();

	// Lägg till sidan i den nya dokumentinstansen
	newPdfDocument->get_Pages()->Add(pdfDocument->get_Pages()->idx_get(i));

	// Spara som CSV-fil
	newPdfDocument->Save(u"OutputDirectory\\Sample2_csv_out_" + System::Convert::ToString(i) + u".csv", options);
}

Skaffa en gratis licens

Du kan prova API:et utan utvärderingsbegränsningar genom att begära en gratis tillfällig licens.

Slutsats

I den här artikeln har du lärt dig hur du konverterar CSV-filer till PDF och PDF-filer till CSV-format. Dessutom har du sett hur du lägger till specifika sidor till den genererade CSV-filen eller konverterar PDF-sidor till individuella CSV-filer. Aspose.Cells för C++ och Aspose.PDF för C++ är kraftfulla API:er för att arbeta med Excel- respektive PDF-filer. Du kan utforska API:erna i detalj genom att besöka deras officiella dokumentation. Om du har några frågor är du välkommen att kontakta oss på vårt gratis supportforum.

Se även