تحديد تحذير الفرز أثناء فرز البيانات

سيناريوهات الاستخدام المحتملة

يرجى النظر في هذه البيانات النصية أي: {11, 111, 22}. تم فرز هذه البيانات النصية مثل هذا لأن من حيث النص، 111 يأتي قبل 22. ولكن إذا كنت ترغب في فرز هذه البيانات ليس كنص ولكن كأرقام، فسيصبح {11, 22, 111} لأن رقميا 111 يأتي بعد 22. Aspose.Cells توفر خاصية DataSorter.SortAsNumber للتعامل مع هذه المشكلة. يرجى ضبط هذه الخاصية صحيحة وبياناتك النصية سيتم فرزها كبيانات رقمية. تظهر الشاشة التالية تحذير الفرز الذي يظهره Microsoft Excel عندما يتم فرز البيانات النصية التي تبدو كبيانات رقمية.

todo:image_alt_text

الكود المثالي

الكود المثالي التالي يوضح استخدام DataSorter.SortAsNumber كما شرحت سابقًا. يرجى تحقق من ملف الإكسل عينة وملف الإكسل الناتج لمزيد من المساعدة.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the documents directory.
String dataDir = Utils.getSharedDataDir(SpecifyingSortWarningWhileSortingData.class) + "data/";
// Create workbook.
Workbook workbook = new Workbook(dataDir + "sampleSortAsNumber.xlsx");
// Access first worksheet.
Worksheet worksheet = workbook.getWorksheets().get(0);
// Create your cell area.
CellArea ca = CellArea.createCellArea("A1", "A20");
// Create your sorter.
DataSorter sorter = workbook.getDataSorter();
// Find the index, since we want to sort by column A, so we should know
// the index for sorter.
int idx = CellsHelper.columnNameToIndex("A");
// Add key in sorter, it will sort in Ascending order.
sorter.addKey(idx, SortOrder.ASCENDING);
sorter.setSortAsNumber(true);
// Perform sort.
sorter.sort(worksheet.getCells(), ca);
// Save the output workbook.
workbook.save(dataDir + "outputSortAsNumber.xlsx");