Преобразование числовых данных в текстовом виде в число с помощью C++
Возможные сценарии использования
Иногда вы хотите преобразовать числовые данные, введенные как текст, в числа. Вы можете вводить числа как текст в Microsoft Excel, поставив апостроф перед числом, например ‘12345. Затем Excel обрабатывает число как строку. Aspose.Cells позволяет вам преобразовывать строки в числа.
Как преобразовать числа, хранящиеся как текст, в числа в Excel
Вы можете преобразовать числа, хранящиеся как текст, в числа, следуя нескольким простым шагам.
- Выберите любую одиночную ячейку или диапазон ячеек, у которых есть индикатор ошибки в верхнем левом углу.
- Рядом с выбранной ячейкой или диапазоном ячеек нажмите кнопку ошибки, которая появляется. В меню щелкните Преобразовать в число.
- Если кнопка предупреждения недоступна, выберите столбец с этой проблемой. Если вы не хотите преобразовать весь столбец, вы можете выбрать одну или несколько ячеек. Убедитесь, что выбранные вами ячейки находятся в одном столбце, иначе этот процесс не сработает. Кнопка Текст в столбцах обычно используется для разделения столбца, но ее также можно использовать для преобразования одного столбца текста в числа. На вкладке Данные щелкните Текст в столбцах.
- Щелкните кнопку Завершить во всплывающем окне.
- Числа, сохраненные как текст, преобразуются в числа.
Как преобразовать числа, сохраненные как текст, в числа с помощью 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();
}