В этой статье я расскажу, как программно сортировать данные на листе Excel на Java с помощью Spire. XLS для Java API.
Шпиль. XLS для Java – это многофункциональный API, который поддерживает создание, чтение, обработку, преобразование и печать файлов Excel в приложениях Java. Это позволяет выполнять сортировку данных в Excel на основе следующих:
- Сортировка данных на основе значений ячеек
- Сортировка данных на основе цвета ячеек
- Сортировка данных на основе цвета шрифта
В следующих примерах кода вы увидите, как сортировать данные с помощью Spire. XLS для Java API.
Гетджар
Вы можете загрузить файл JAR API с эта ссылка или установите, используя следующие конфигурации Maven.
com.e-iceblue e-iceblue http://repo.e-iceblue.com/nexus/content/groups/public/ e-iceblue spire.xls 3.11.2
Сортировка данных на основе значений ячеек
import com.spire.xls.*;
import com.spire.xls.core.spreadsheet.sorting.SortColumn;
public class SortByValues {
public static void main(String[] args) {
//Create a Workbook instance
Workbook workbook = new Workbook();
//Load the Excel file
workbook.loadFromFile("SortData.xlsx");
//Get the first worksheet
Worksheet sheet = workbook.getWorksheets().get(0);
//Create a sort column with the column index, the sort based on and order by attributes
SortColumn column = workbook.getDataSorter().getSortColumns().add(0, SortComparsionType.Values, OrderBy.Descending);
//Sort specified cell range
workbook.getDataSorter().sort(sheet.getCellRange("A1:A8"));
//Save the result file
workbook.saveToFile("SortByValues.xlsx", ExcelVersion.Version2013);
}
}
Выходной файл Excel:
Сортировка данных на основе цвета ячеек
import com.spire.xls.*;
import com.spire.xls.core.spreadsheet.sorting.SortColumn;
import java.awt.*;
public class SortByCellColor {
public static void main(String[] args) {
//Create a Workbook instance
Workbook workbook = new Workbook();
//Load the Excel file
workbook.loadFromFile("SortData.xlsx");
//Get the second worksheet
Worksheet sheet = workbook.getWorksheets().get(1);
//Create a sort column with the column index, the sort based on and order by attributes
SortColumn column = workbook.getDataSorter().getSortColumns().add(0, SortComparsionType.BackgroundColor, OrderBy.Top);
//Specify the color to sort the data
column.setColor(Color.red);
//Sort specified cell range
workbook.getDataSorter().sort(sheet.getCellRange("A1:A8"));
//Save the result file
workbook.saveToFile("SortByCellColor.xlsx", ExcelVersion.Version2013);
}
}
Выходной файл Excel:
Сортировка данных на основе цвета шрифта
import com.spire.xls.*;
import com.spire.xls.core.spreadsheet.sorting.SortColumn;
import java.awt.*;
public class SortByFontColor {
public static void main(String[] args) {
//Create a Workbook instance
Workbook workbook = new Workbook();
//Load the Excel file
workbook.loadFromFile("SortData.xlsx");
//Get the third worksheet
Worksheet sheet = workbook.getWorksheets().get(2);
//Create a sort column with the column index, the sort based on and order by attributes
SortColumn column = workbook.getDataSorter().getSortColumns().add(0, SortComparsionType.FontColor, OrderBy.Bottom);
//Specify the color to sort the data
column.setColor(Color.red);
//Sort specified cell range
workbook.getDataSorter().sort(sheet.getCellRange("A1:A8"));
//Save the result file
workbook.saveToFile("SortByFontColor.xlsx", ExcelVersion.Version2013);
}
}
Выходной файл Excel:
Оригинал: “https://dev.to/eiceblue/sort-data-in-excel-in-java-1cc3”