Обновите файл XLSX через C++

Изменяйте электронные таблицы XLSX с помощью приложений на основе C++, не устанавливая Microsoft Office®.

 

Для программиста, который пытается обновить файлы XLSX в приложении C++, Aspose.Total for C++ API может помочь автоматизировать процесс обновления. Это полный пакет различных библиотек C++, работающих с несколькими форматами, включая документы Microsoft Excel. Aspose.Cells for C++ API, который является частью пакета Aspose.Total for C++ , упрощает этот процесс модификации. Процесс обновления документа XLSX прост: сначала нужно получить доступ к листу, а затем обновить значение ячейки в Excel с помощью C++.

Как обновить файл XLSX в C++

  • Загрузите файл XLSX, используя CreateIWorkbook
  • Доступ к соответствующему Worksheet с использованием GetIWorksheets()->GetObjectByIndex(0) и соответствующей ячейке с использованием GetICells()->GetObjectByIndex
  • Вставьте новые данные в доступную ячейку, используя метод PutValue.
  • Сохраните файл как файл .xlsx, используя метод «Сохранить», передав файл с путем в качестве параметра.

Требования к модификации

  • Для модификации XLSX следуйте Системные Требования для систем Windows и Linux.
  • Установите из командной строки как nuget install Aspose.Total.Cpp
  • Или через консоль диспетчера пакетов Visual Studio с Install-Package Aspose.Total.Cpp
  • Кроме того, вы можете получить автономный установщик MSI или библиотеки DLL в ZIP-файле из Загрузки .
 

Код — обновить файл XLSX в 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);
 

Исследовать Редактор файлов Варианты с C++

Редактировать CSV (Значения, разделенные запятыми)
Редактировать TSV (Значения, разделенные табуляцией)
Редактировать XLS (Двоичный формат Microsoft Excel)
Редактировать XLSB (Двоичная книга Excel)
Редактировать XLSM (Электронная таблица с поддержкой макросов)
Редактировать XLSX (Открытая XML-книга)
Редактировать XLT (Шаблон Excel 97 - 2003)
Редактировать XLTM (Шаблон Excel с поддержкой макросов)
Редактировать XLTX (Шаблон Excel)