Преобразование числовых данных в текстовом виде в число с помощью C++

Возможные сценарии использования

Иногда вы хотите преобразовать числовые данные, введенные как текст, в числа. Вы можете вводить числа как текст в Microsoft Excel, поставив апостроф перед числом, например ‘12345. Затем Excel обрабатывает число как строку. Aspose.Cells позволяет вам преобразовывать строки в числа.

Как преобразовать числа, хранящиеся как текст, в числа в Excel

Вы можете преобразовать числа, хранящиеся как текст, в числа, следуя нескольким простым шагам.

  1. Выберите любую одиночную ячейку или диапазон ячеек, у которых есть индикатор ошибки в верхнем левом углу.
  2. Рядом с выбранной ячейкой или диапазоном ячеек нажмите кнопку ошибки, которая появляется. В меню щелкните Преобразовать в число.
  3. Если кнопка предупреждения недоступна, выберите столбец с этой проблемой. Если вы не хотите преобразовать весь столбец, вы можете выбрать одну или несколько ячеек. Убедитесь, что выбранные вами ячейки находятся в одном столбце, иначе этот процесс не сработает. Кнопка Текст в столбцах обычно используется для разделения столбца, но ее также можно использовать для преобразования одного столбца текста в числа. На вкладке Данные щелкните Текст в столбцах.
  4. Щелкните кнопку Завершить во всплывающем окне.
  5. Числа, сохраненные как текст, преобразуются в числа.

Как преобразовать числа, сохраненные как текст, в числа с помощью Aspose.Cells for C++

Aspose.Cells предоставляет метод Cells.ConvertStringToNumericValue(), который может быть использован для преобразования всех строковых или текстовых числовых данных в числа.

На следующем снимке экрана показаны строковые числа в ячейках A1:A17. Строковые числа выровнены влево.

Эти строковые числа были преобразованы в числа с использованием Cells.ConvertStringToNumericValue() на следующем скриншоте. Как вы можете видеть, они теперь выровнены по правому краю.

Код C++ для преобразования строковых числовых данных в реальные числа

Следующий образец кода показывает, как преобразовать все строковые числовые данные в фактические числа во всех листах книги.

#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;

int main()
{
    Aspose::Cells::Startup();

    // For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C

    // Source directory path
    U16String srcDir(u"..\\Data\\01_SourceDirectory\\");

    // Output directory path
    U16String outDir(u"..\\Data\\02_OutputDirectory\\");

    // Instantiate workbook object with an Excel file
    U16String inputFilePath = srcDir + u"SampleBook.xlsx";
    Workbook workbook(inputFilePath);

    // Iterate through all worksheets and convert string values to numeric
    for (int32_t i = 0; i < workbook.GetWorksheets().GetCount(); i++)
    {
        workbook.GetWorksheets().Get(i).GetCells().ConvertStringToNumericValue();
    }

    // Save the Excel file
    U16String outputFilePath = outDir + u"output_out.xlsx";
    workbook.Save(outputFilePath);

    std::cout << "Conversion completed successfully!" << std::endl;

    Aspose::Cells::Cleanup();
}