Недавно, когда я работал с таблицей Excel, содержащей большой объем данных, из-за изменения данных оставалось много пустых строк и столбцов. Чтобы быстро удалить их, я протестировал Free Spire.XLS for Java и успешно удалил пустые строки и пустые столбцы на листе Excel. Далее я поделюсь использованным кодом Java со всеми.
Импорт пакета JAR
Установите пакет jar через репозиторий Maven, и код для настройки файла pom.xml выглядит следующим образом:
Исходный документ Excel выглядит следующим образом:

Код Java
Результат выполнения кода:

Импорт пакета JAR
Установите пакет jar через репозиторий Maven, и код для настройки файла pom.xml выглядит следующим образом:
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls.free</artifactId>
<version>2.2.0</version>
</dependency>
</dependencies>
Исходный документ Excel выглядит следующим образом:

Код Java
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class DeleteBlankRowsAndColumns {
public static void main(String[] args) {
//Загрузить образец файла
Workbook wb = new Workbook();
wb.loadFromFile("sample1.xlsx ");
//Получите первый рабочий лист
Worksheet sheet = wb.getWorksheets().get(0);
//Пройдите по всем рядам
for (int i = sheet.getLastRow(); i >= 1; i--)
{
//Проверить, пуста ли строка
if (sheet.getRows()[i-1].isBlank())
{
//Удалить пустые строки
sheet.deleteRow(i);
}
}
//Прокрутите все столбцы
for (int j = sheet.getLastColumn(); j >= 1; j--)
{
//Определить, пуст ли столбец
if (sheet.getColumns()[j-1].isBlank())
{
//Удалить пустые столбцы
sheet.deleteColumn(j);
}
}
//Сохраните документ
wb.saveToFile("result.xlsx", ExcelVersion.Version2016);
}
}
Результат выполнения кода:
