API العام التغييرات في Aspose.Cells 8.0.0

تمت إضافة MemorySetting إلى LoadOptions & WorkbookSettings

بدءًا من الإصدار 8.0.0 من Aspose.Cells for Java ، قمنا بتوفير خيارات استخدام الذاكرة لاعتبارات الأداء. خاصية MemorySetting متاحة الآن في فئات LoadOptions & WorkbookSettings.

مثال

يوضح كيفية قراءة ملف Excel (كبير الحجم) في الوضع الأمثل.

Java

 //Initialize LoadOptions

LoadOptions options = new LoadOptions();

//Set memory preferences

options.setMemorySetting(MemorySetting.MEMORY_PREFERENCE);

//Instantiate the Workbook with an object of LoadOptions

Workbook book = new Workbook(myDir + "large.xlsx", options);

يوضح كيفية كتابة مجموعة بيانات كبيرة إلى ورقة عمل في الوضع الأمثل.

Java

 //Instantiate a new Workbook

Workbook book = new Workbook();

//Set the memory preferences for WorkbookSettings

book.getSettings().setMemorySetting(MemorySetting.MEMORY_PREFERENCE);

//Input large data into the cells

//.........

تم تغيير تطبيقات Row & Cell

في الإصدارات السابقة ، تم الاحتفاظ بكائنات Row و Cell في الذاكرة لتمثيل الصف والخلية المطابقة في ورقة عمل. تم إرجاع نفس المثيل كلماRowCollection [فهرس int] أوCells [الصف الدولي ، العمود الدولي] تم استرجاعها. للنظر في أداء الذاكرة ، سيتم الاحتفاظ بخصائص وبيانات صف و Cell فقط في الذاكرة الآن فصاعدًا. ومن ثم ، أصبح الكائن Row & Cell غلافًا للخصائص المذكورة سابقًا.

مثال

يوضح كيفية مقارنة Cell وكائنات الصف من الآن فصاعدًا.

Java

 //..

row1.equals(row2);


cell1.equals(cell2);

//..

نظرًا لأنه يتم تكوين كائنات الصف و Cell وفقًا للاستدعاء ، فلن يتم الاحتفاظ بها وإدارتها في الذاكرة بواسطة المكون Cells. لذلك بعد بعض عمليات الإدراج والحذف ، قد لا يتم تحديث فهارس الصف والعمود أو حتى أسوأ من ذلك ، تصبح هذه الكائنات غير صالحة.

مثال

على سبيل المثال ، سيعرض مقتطف الشفرة التالي نتائج غير صالحة باستخدام 8.0.0 وما فوق ،

Java

 Cell cell = cells.get("A2");

System.out.println(cell.getName() + ":" + cell.getValue());

cells.insertRange(CellArea.createCellArea("A1", "A1"), ShiftType.DOWN);

System.out.println(cell.getName() + ":" + cell.getValue());

مع الإصدار الجديد ، سيصبح الكائن Cell غير صالح أو يشير إلى A2 مع بعض القيمة غير المرغوب فيها. لتجنب مثل هذا الموقف ، احصل على صف أو Cell كائنات مرة أخرى من مجموعة الخلايا لاسترداد النتيجة الصحيحة.

Java

 Cell cell = cells.get("A2");

System.out.println(cell.getName() + ":" + cell.getValue());

cells.insertRange(CellArea.createCellArea("A1", "A1"), ShiftType.DOWN);

//Fetch the cell reference again

Cell cell = cells.get("A3");

System.out.println(cell.getName() + ":" + cell.getValue());

تغيير سلوك قيمة السلسلة Cell

في الإصدارات السابقة ، نمط خاص_تم تجاهله أثناء تنسيق قيم الخلية ، حيث ينتج الحرف الخاص * دائمًا حرفًا واحدًا في النتيجة المنسقة. من هذا الإصدار ، قمنا بتغيير المنطق للتعامل مع الأحرف الخاصة_ و* من أجل جعل النتيجة المنسقة مماثلة لتطبيق Excel. على سبيل المثال ، تنسيق الخلية المخصص “_ (\ $* #، ## 0.00_) “تستخدم لتمثيل القيمة 123 التي أنتجت النتيجة كـ” $ 123.00 “. مع الإصدارات الجديدة ، ستحتوي Cell.StringValue على النتيجة كـ” $ 123.00 “وهو نفس السلوك الذي يعرضه تطبيق Excel أثناء نسخ الخلية إلى نص أو التصدير إلى CSV.

تمت إضافة CreatedTime إلى PdfSaveOptions

الآن يمكن للمستخدمين الحصول على أو تعيين PDF وقت الإنشاء مع حفظ جدول البيانات في PDF أثناء استخدام فئة PdfSaveOptions.

تمت إضافة صيغ العرض إلى ورقة العمل

من الآن فصاعدًا ، يمكن للمستخدمين استخدام الخاصية المنطقية ShowFormulas التي تقدمها ورقة العمل لتبديل طريقة العرض بين الصيغة وقيمة ورقة عمل معينة.

تمت إضافة Ooxml إلى FileFormatType

تمت إضافة ثابت جديد Ooxml إلى فئة FileFormatType لتمثيل ملف Office المشفر المفتوح XML مثل XLSX و DOCX و PPTX والمزيد.

عامل التصفية المتقادم

باستخدام Aspose.Cells for Java ، تم تمييز طريقة getFilterColumnCollection بأنها قديمة. يُقترح استخدام طريقة AuotFilter.getFilterColumns بدلاً من ذلك.

تم استبدال SeriesCollection.SecondCatergoryData بـ SeriesCollection.SecondCategoryData

لقد قمنا بشكل أساسي بتصحيح الخطأ المطبعي في اسم الطريقة لـ SeriesCollection.getSecondCatergoryData. يمكنك استخدام طريقة SeriesCollection.getSecondCategoryData الآن فصاعدًا ، بينما تم وضع علامة على الطريقة الأصلية SeriesCollection.getSecondCatergoryData عفا عليها الزمن.