Dla programisty, który próbuje zaktualizować pliki XLSX w aplikacji C++, Aspose.Total for C++ API może pomóc zautomatyzować proces aktualizacji. Jest to pełny pakiet różnych bibliotek C++ obsługujących wiele formatów, w tym dokumenty Microsoft Excel. API Aspose.Cells for C++ , które jest częścią pakietu Aspose.Total for C++ , ułatwia ten proces modyfikacji. Proces aktualizacji dokumentu XLSX jest prosty poprzez najpierw dostęp do arkusza, a następnie aktualizację wartości komórki w Excelu przy użyciu C++.
Jak zaktualizować plik XLSX w C++
- Załaduj plik XLSX za pomocą CreateIWorkbook
- Dostęp do odpowiedniego Worksheet przy użyciu GetIWorksheets()->GetObjectByIndex(0) i odpowiedniej komórki przy użyciu GetICells()->GetObjectByIndex
- Wstaw nowe dane do otwieranej komórki metodą PutValue
- Zapisz plik jako plik .xlsx metodą Save przekazując jako parametr plik ze ścieżką
Wymagania dotyczące modyfikacji
- Do modyfikacji XLSX, zgodnie z wymagania systemowe dla systemów Windows i Linux
- Zainstaluj z wiersza poleceń jako
nuget install Aspose.Total.Cpp
- Lub przez konsolę Menedżera pakietów programu Visual Studio z
Install-Package Aspose.Total.Cpp
- Ewentualnie pobierz instalator MSI offline lub biblioteki DLL w pliku ZIP z Pliki do pobrania
Kod — aktualizacja pliku XLSX w C++
StringPtr dirPath = new String("..\\Data\\sourcePath\\"); | |
StringPtr outPath = new String("..\\Data\\OutputPath\\"); | |
StringPtr srcCSV = dirPath->StringAppend(new String(L"srcFile.csv")); | |
StringPtr updatedCSV = outPath->StringAppend(new String(L"outReadWriteCSV.csv")); | |
intrusive_ptr<IWorkbook> wb = Factory::CreateIWorkbook(srcCSV); | |
intrusive_ptr<IWorksheet> ws = wb->GetIWorksheets()->GetObjectByIndex(0); | |
intrusive_ptr<ICell> cell = ws->GetICells()->GetObjectByIndex(new String("A1")); | |
StringPtr strVal = cell->GetStringValue(); | |
StringPtr cellValue = new String("Cell Value: "); | |
Console::WriteLine(cellValue->StringAppend(strVal)); | |
cell = ws->GetICells()->GetObjectByIndex(new String("C4")); | |
intrusive_ptr<String> strValPtr = new String(strVal); | |
cell->PutValue(strValPtr); | |
wb->Save(updatedCSV, SaveFormat_CSV); |