Excel dosyalarının verilerini yönetme

Hücrelere Veri Ekleme

Aspose.Cells for Node.js via C++, bir Microsoft Excel dosyasını temsil eden Workbook sınıfını sağlar. Workbook sınıfı, Excel dosyasındaki her çalışma sayfasına erişim sağlayan bir Worksheets koleksiyonunu içerir. Bir çalışma sayfası, Worksheet sınıfı tarafından temsil edilir. Worksheet sınıfı ise bir Cells koleksiyonu sağlar. Cells koleksiyonundaki her öğe, Cell sınıfının bir nesnesini temsil eder.

Aspose.Cells, geliştiricilerin Cell sınıfının putValue metodunu çağırarak hücrelere veri eklemesine olanak tanır. Aspose.Cells, farklı veri türlerini hücrelere eklemeyi sağlayan putValue metodunun aşırı yüklenmiş sürümlerini de sunar. Bu aşırı yüklenmiş metodları kullanarak, hücreye Boolean, dize, double, tam sayı veya tarih/zaman gibi değerler ekleyebilirsiniz.

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"));

Verimliliği Nasıl Arttırılır

Eğer putValue metodunu kullanarak büyük miktarda veri bir çalışma sayfasına yerleştiriyorsanız, verileri önce satır satır, sonra sütun sütun ekmek uygulamanız, uygulamanızın verimliliğini büyük ölçüde artıracaktır.

Hücrelerden Veri Almak

Aspose.Cells for Node.js via C++, dosyadaki çalışma sayfalarına erişim sağlamak için kullanılan Workbook sınıfını sağlar. Workbook sınıfı, ana dosyadaki çalışma sayfalarına erişime imkan tanıyan bir Worksheets koleksiyonunu içerir. Bir çalışma sayfası, Worksheet sınıfı ile temsil edilir. Worksheet sınıfı, bir Cells koleksiyonu sunar. Cells koleksiyonundaki her öğe, Cell sınıfının bir nesnesini temsil eder.

Cell sınıfı, geliştiricilerin hücrelerin değerlerini veri türlerine göre almak için kullanabilecekleri birkaç özellik sağlar. Bu özellikler şunları içerir:

Bir alan doldurulmadığında, getDoubleValue() veya getFloatValue() ile hücreler istisna fırlatır.

Bir hücrede bulunan verinin tipi, Cell sınıfının getType() metodu kullanılarak da kontrol edilebilir. Aslında, Cell sınıfının getType() metodu, aşağıda listelenen önceden tanımlı değerlere sahip CellValueType enum’ına dayanmaktadır:

Hücre Değer Türleri Açıklama
IsBool Hücre değerinin Boolean olduğunu belirtir.
IsDateTime Hücre değerinin tarih/saat olduğunu belirtir.
IsNull Boş bir hücreyi temsil eder.
IsNumeric Hücre değerinin sayısal olduğunu belirtir.
IsString Hücre değerinin bir dize olduğunu belirtir.
IsUnknown Hücre değerinin bilinmeyen olduğunu belirtir.

Yukarıda tanımlanan hücre değeri tiplerini aynı zamanda her hücrede bulunan veri türüyle karşılaştırmak için de kullanabilirsiniz.

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;
}
}
}

Gelişmiş Konular