Rozdělte text do sloupců v souborech aplikace Excel pomocí C++

Microsoft Excel umožňuje rozdělit text do více sloupců pomocí oddělovačů, jako je mezera, čárka nebo jiné znaky. Tato funkce může být užitečná ve scénářích, jako je převod čárkami oddělených dat exportovaných z databázové tabulky do tabulkové formy. Za tímto účelem vás tento článek naučí, jak rozdělit text do sloupců v souborech Excel pomocí C++.

C++ API pro rozdělení textu na sloupce v souborech aplikace Excel

Pro rozdělení textu do sloupců v souborech aplikace Excel použijeme API Aspose.Cells for C++. Jedná se o nativní knihovnu C++, která vám umožňuje vytvářet, číst a upravovat soubory aplikace Excel bez nutnosti instalace aplikace Microsoft Excel. Rozhraní API můžete nainstalovat buď prostřednictvím NuGet, nebo si jej stáhnout přímo ze sekce Downloads.

PM> Install-Package Aspose.Cells.Cpp

Rozdělte text do sloupců v souborech aplikace Excel pomocí C++

Následují kroky k rozdělení textu do sloupců v souborech aplikace Excel.

Následující ukázkový kód ukazuje, jak rozdělit text do sloupců v souborech aplikace Excel pomocí C++.

// Cesta ke zdrojovému adresáři.
StringPtr srcDir = new String("SourceDirectory\\");

// Cesta k výstupnímu adresáři.
StringPtr outDir = new String("OutputDirectory\\");

// Cesta k výstupnímu excelovému souboru
StringPtr outputFile = outDir->StringAppend(new String("TextToColumns.xlsx"));

// Vytvořte instanci třídy IWorkbook
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();

// Otevřete první pracovní list
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Přidejte ukázková data
intrusive_ptr<String> str = new String("John Teal");
worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue(str);
str = new String("Peter Graham");
worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(str);
str = new String("Brady Cortez");
worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(str);
str = new String("Mack Nick");
worksheet->GetICells()->GetObjectByIndex(new String("A4"))->PutValue(str);
str = new String("Hsu Lee");
worksheet->GetICells()->GetObjectByIndex(new String("A5"))->PutValue(str);

// Vytvořte instanci třídy ITxtLoadOptions třídy
intrusive_ptr<ITxtLoadOptions> options = Factory::CreateITxtLoadOptions();

// Zadejte oddělovač pro oddělení textu
options->SetSeparator(' ');

// Rozdělit text na sloupce
worksheet->GetICells()->TextToColumns(0, 0, 5, options);

// Uložte výstupní excelový soubor
workbook->Save(outputFile);
Obrázek výstupního souboru aplikace Excel zobrazující text rozdělený do dvou sloupců

Obrázek výstupního souboru Excel zobrazující text rozdělený do dvou sloupců

Získejte bezplatnou licenci

Abyste mohli API vyzkoušet bez omezení hodnocení, můžete požádat o bezplatnou dočasnou licenci.

Závěr

V tomto článku jste se naučili, jak rozdělit text do více sloupců v souborech aplikace Excel pomocí C++. Viděli jste úplný úryvek kódu spolu s kroky potřebnými k dosažení tohoto cíle. Aspose.Cells for C++ je robustní API, které poskytuje mnoho dalších funkcí pro automatizaci vašich úloh souvisejících s Excelem. Rozhraní API můžete podrobně prozkoumat na oficiální dokumentaci. V případě jakýchkoli dotazů nás neváhejte kontaktovat na našem bezplatném fóru podpory.

Viz také