Управление данными файлов Excel
Как добавить данные в ячейки
Aspose.Cells for Node.js via C++ предоставляет класс, Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит коллекцию Worksheets, которая позволяет получать доступ к каждому листу Excel файла. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию Cells. Каждый элемент в коллекции Cells представляет объект класса Cell.
Aspose.Cells позволяет разработчикам добавлять данные в ячейки листов, вызывая метод класса Cell putValue. Предоставляются перегруженные версии метода putValue, которые позволяют добавлять различные виды данных в ячейки. Используя эти перегруженные версии метода putValue, можно добавлять в ячейку значения типа Boolean, строка, двойное, целое или дата/время.
const path = require("path"); | |
const AsposeCells = require("aspose.cells.node"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
// Create directory if it is not already present. | |
const fs = require("fs"); | |
if (!fs.existsSync(dataDir)) { | |
fs.mkdirSync(dataDir); | |
} | |
// Instantiating a Workbook object | |
let workbook = new AsposeCells.Workbook(); | |
// Obtaining the reference of the first worksheet | |
let worksheet = workbook.getWorksheets().get(0); | |
// Adding a string value to the cell | |
worksheet.getCells().get("A1").putValue("Hello World"); | |
// Adding a double value to the cell | |
worksheet.getCells().get("A2").putValue(20.5); | |
// Adding an integer value to the cell | |
worksheet.getCells().get("A3").putValue(15); | |
// Adding a boolean value to the cell | |
worksheet.getCells().get("A4").putValue(true); | |
// Adding a date/time value to the cell | |
worksheet.getCells().get("A5").putValue(new Date()); | |
// Setting the display format of the date | |
let style = worksheet.getCells().get("A5").getStyle(); | |
style.setNumber(15); | |
worksheet.getCells().get("A5").setStyle(style); | |
// Saving the Excel file | |
workbook.save(path.join(dataDir, "output.out.xls")); |
Как улучшить эффективность
Если вы используете метод putValue для вставки большого объема данных в лист, рекомендуется добавлять значения сначала по строкам, затем по столбцам. Такой подход значительно повышает эффективность ваших приложений.
Как извлечь данные из ячеек
Aspose.Cells for Node.js via C++ предоставляет класс, Workbook, который представляет файл Microsoft Excel. Класс Workbook содержит коллекцию Worksheets, позволяющую получать доступ к листам файла. Лист представлен классом Worksheet. Класс Worksheet предоставляет коллекцию Cells. Каждый элемент в Cells — объект класса Cell.
Класс Cell содержит несколько свойств, позволяющих получать значения из ячеек в зависимости от их типа данных. Эти свойства включают:
- getStringValue(): возвращает строковое значение ячейки.
- getDoubleValue(): возвращает двойное значение ячейки.
- getBoolValue(): возвращает логическое значение ячейки.
- getDateTimeValue(): возвращает значение даты/времени ячейки.
- getFloatValue(): возвращает значение с плавающей точкой ячейки.
- getIntValue(): возвращает целочисленное значение ячейки.
Если поле не заполнено, ячейки с getDoubleValue() или getFloatValue() вызывают исключение.
Тип данных, содержащийся в ячейке, также можно проверить, используя метод getType() класса Cell. На самом деле, метод getType() класса Cell основан на перечислении CellValueType, предопределённые значения которого приведены ниже:
Типы Значений Ячеек | Описание |
---|---|
IsBool | Указывает, что значение ячейки является логическим. |
IsDateTime | Указывает, что значение ячейки является дата/время. |
IsNull | Представляет пустую ячейку. |
IsNumeric | Указывает, что значение ячейки является числовым. |
IsString | Указывает, что значение ячейки является строкой. |
IsUnknown | Указывает, что значение ячейки неизвестно. |
Вы также можете использовать вышеперечисленные предопределенные типы значений ячейки для сравнения с типом данных, присутствующим в каждой ячейке.
const AsposeCells = require("aspose.cells.node"); | |
const path = require("path"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
// Opening an existing workbook | |
const workbook = new AsposeCells.Workbook("book1.xls"); | |
// Accessing first worksheet | |
const worksheet = workbook.getWorksheets().get(0); | |
var cells = worksheet.getCells(); | |
var maxRow = cells.getMaxRow(); | |
var maxColumn = cells.getMaxColumn(); | |
for (let i = 0; i <= maxRow; i++) { | |
for (let j = 0; j <= maxColumn; j++) | |
{ | |
const cell1 = cells.get(i, j); | |
// Variables to store values of different data types | |
let stringValue; | |
let doubleValue; | |
let boolValue; | |
let dateTimeValue; | |
// Passing the type of the data contained in the cell for evaluation | |
switch (cell1.getType()) { | |
// Evaluating the data type of the cell data for string value | |
case AsposeCells.CellValueType.IsString: | |
stringValue = cell1.getStringValue(); | |
console.log("String Value: " + stringValue); | |
break; | |
// Evaluating the data type of the cell data for double value | |
case AsposeCells.CellValueType.IsNumeric: | |
doubleValue = cell1.getDoubleValue(); | |
console.log("Double Value: " + doubleValue); | |
break; | |
// Evaluating the data type of the cell data for boolean value | |
case AsposeCells.CellValueType.IsBool: | |
boolValue = cell1.getBoolValue(); | |
console.log("Bool Value: " + boolValue); | |
break; | |
// Evaluating the data type of the cell data for date/time value | |
case AsposeCells.CellValueType.IsDateTime: | |
dateTimeValue = cell1.getDateTimeValue(); | |
console.log("DateTime Value: " + dateTimeValue); | |
break; | |
// Evaluating the unknown data type of the cell data | |
case AsposeCells.CellValueType.IsUnknown: | |
stringValue = cell1.getStringValue(); | |
console.log("Unknown Value: " + stringValue); | |
break; | |
// Terminating the type checking of type of the cell data is null | |
case AsposeCells.CellValueType.IsNull: | |
break; | |
} | |
} | |
} |
Продвинутые темы
- Доступ к ячейкам листа
- Преобразование текстовых числовых данных в число
- Создание итогов
- Фильтрация данных
- Сортировка данных
- Валидация данных
- Поиск или поиск данных
- Получение строкового значения ячейки с или без форматирования
- Добавление HTML-форматированного текста в ячейку
- Вставка гиперссылок в Excel или OpenOffice
- Как и где использовать перечислители
- Измерение ширины и высоты значения ячейки в пикселях
- Чтение значений ячеек в нескольких потоках одновременно
- Преобразование между именем ячейки и индексом строки/столбца
- Сначала заполняется строка, а затем столбец.
- Сохранить префикс одинарной кавычки значения ячейки или диапазона
- Доступ и обновление частей Rich Text ячейки