Veri Ekle ve Al
Cells’e Veri Ekleme
Aspose.Cells bir sınıf sağlarIÇalışma Kitabı bu bir Microsoft Excel dosyasını temsil eder. buIÇalışma Kitabı sınıf bir içerirIÇalışma Sayfaları Excel dosyasındaki her çalışma sayfasına erişim sağlayan koleksiyon. Bir çalışma sayfası şununla temsil edilir:IÇalışma Sayfası sınıf. buIÇalışma Sayfası sınıf bir sağlarICell’ler Toplamak. İçindeki her öğeICell’ler koleksiyon bir nesneyi temsil ederICellsınıf.
Aspose.Cells, geliştiricilerin çalışma sayfalarındaki hücrelere şunu çağırarak veri eklemesine olanak tanır:ICell sınıfPutValue yöntem. Aspose.Cells, aşırı yüklenmiş sürümler sağlar.PutValue geliştiricilerin hücrelere farklı türde veriler eklemesine olanak tanıyan bir yöntem. Bu aşırı yüklenmiş sürümlerini kullanarakPutValueyöntemi ile hücreye Boolean, string, double, integer veya tarih/saat vb. değerler eklemek mümkündür.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Path of input excel file | |
StringPtr sampleData = dirPath->StringAppend(new String("sampleData.xlsx")); | |
//Path of output excel file | |
StringPtr outputData = outPath->StringAppend(new String("outputData.xlsx")); | |
//Read input excel file | |
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(sampleData); | |
//Accessing the second worksheet in the Excel file | |
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(1); | |
//Adding a string value to the cell | |
worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue("Hello World"); | |
//Adding a double value to the cell | |
worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(20.5); | |
//Adding an integer value to the cell | |
worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(15); | |
//Adding a boolean value to the cell | |
worksheet->GetICells()->GetObjectByIndex(new String("A4"))->PutValue(true); | |
//Setting the display format of the date | |
intrusive_ptr<ICell> cell = worksheet->GetICells()->GetObjectByIndex(new String("A5")); | |
intrusive_ptr<IStyle> style = cell->GetIStyle(); | |
style->SetNumber(15); | |
cell->SetIStyle(style); | |
//Save the workbook | |
workbook->Save(outputData); |
Verimliliği Artırma
Eğer kullanırsanPutValueBir çalışma sayfasına büyük miktarda veri yerleştirme yöntemi olarak, hücrelere önce satırlara sonra sütunlara göre değerler eklemelisiniz. Bu yaklaşım, uygulamalarınızın verimliliğini büyük ölçüde artırır.
Cells’den Veri Alınıyor
Aspose.Cells bir sınıf sağlarIÇalışma Kitabı bu bir Microsoft Excel dosyasını temsil eder. buIÇalışma Kitabı sınıf bir içerirIÇalışma Sayfaları dosyadaki çalışma sayfalarına erişim sağlayan koleksiyon. Bir çalışma sayfası şununla temsil edilir:IÇalışma Sayfası sınıf. buIÇalışma Sayfası sınıf bir sağlarICell’ler Toplamak. İçindeki her öğeICell’ler koleksiyon bir nesneyi temsil ederICellsınıf.
buICellclass, geliştiricilerin veri türlerine göre hücrelerden değerler almasına izin veren çeşitli yöntemler sağlar. Bu yöntemler şunları içerir:
- GetStringValue, hücrenin dize değerini döndürür.
- GetDoubleValue, hücrenin çift değerini döndürür.
- GetBoolValue, hücrenin boole değerini döndürür.
- GetDateTimeValue, hücrenin tarih/saat değerini döndürür.
- GetFloatValue, hücrenin kayan değerini döndürür.
- GetIntValue, hücrenin tamsayı değerini döndürür.
Bir alan doldurulmadığında,GetDoubleValue veyaGetFloatValuebir istisna atar.
Bir hücrede bulunan veri türü kullanılarak da kontrol edilebilir.ICell sınıfGetType yöntem. Aslında,ICell sınıfGetType yöntemine dayanmaktadırHücre Değeri Türüönceden tanımlanmış değerleri aşağıda listelenen numaralandırma:
Cell Değer Türleri | Açıklama |
---|---|
CellValueType_IsBool | Hücre değerinin Boolean olduğunu belirtir. |
CellValueType_IsDateTime | Hücre değerinin tarih/saat olduğunu belirtir. |
CellValueType_IsNull | Boş bir hücreyi temsil eder. |
CellValueType_IsNumeric | Hücre değerinin sayısal olduğunu belirtir. |
CellValueType_IsString | Hücre değerinin dize olduğunu belirtir. |
CellValueType_IsBilinmiyor | Hücre değerinin bilinmediğini belirtir. |
Her hücrede bulunan verilerin Türü ile karşılaştırmak için yukarıda önceden tanımlanmış hücre değeri türlerini de kullanabilirsiniz. |
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Path of input excel file | |
StringPtr sampleData = dirPath->StringAppend(new String("sampleData.xlsx")); | |
//Read input excel file | |
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(sampleData); | |
//Accessing the third worksheet in the Excel file | |
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(2); | |
//Get cells from sheet | |
intrusive_ptr<ICells> cells = worksheet->GetICells(); | |
//Variable declarations | |
intrusive_ptr<String> strVal; | |
intrusive_ptr<Aspose::Cells::System::DateTime> dateVal; | |
Aspose::Cells::System::Double dblVal; | |
Aspose::Cells::System::Boolean boolVal; | |
for (int i = 0; i < cells->GetCount(); i++) | |
{ | |
intrusive_ptr<ICell> cell = cells->GetObjectByIndex(i); | |
switch (cell->GetType()) | |
{ | |
//Evaluating the data type of the cell data for string value | |
case CellValueType_IsString: | |
Console::WriteLine(new String("Cell Value Type Is String.")); | |
strVal = cell->GetStringValue(); | |
break; | |
//Evaluating the data type of the cell data for double value | |
case CellValueType_IsNumeric: | |
Console::WriteLine(new String("Cell Value Type Is Numeric.")); | |
dblVal = cell->GetDoubleValue(); | |
break; | |
//Evaluating the data type of the cell data for boolean value | |
case CellValueType_IsBool: | |
Console::WriteLine(new String("Cell Value Type Is Bool.")); | |
boolVal = cell->GetBoolValue(); | |
break; | |
//Evaluating the data type of the cell data for date/time value | |
case CellValueType_IsDateTime: | |
Console::WriteLine(new String("Cell Value Type Is DateTime.")); | |
dateVal = cell->GetDateTimeValue(); | |
break; | |
//Evaluating the unknown data type of the cell data | |
case CellValueType_IsUnknown: | |
cell->GetStringValue(); | |
break; | |
default: | |
break; | |
} | |
} |