Índice
Instalar com Maven
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>14.1.3</version>
</dependency>
Links Relacionados
A planilha do Excel é um formato de arquivo popular que permite aos usuários organizar, analisar e exibir dados em tabelas. A capacidade de interagir programaticamente com arquivos do Excel é valiosa para automatizar e integrar seus recursos ao software. Isso é especialmente benéfico ao lidar com conjuntos de dados extensos, cálculos complexos ou geração/atualização dinâmica de dados. Neste artigo você aprenderá como crie, leia ou atualize documentos Excel em Java usando Spire.XLS for Java.
- Crie um documento Excel em Java
- Ler dados de uma planilha em Java
- Atualizar um documento Excel em Java
Instale Spire.XLS for Java
Primeiro, é necessário adicionar o arquivo Spire.Xls.jar como uma dependência em seu programa Java. O arquivo JAR pode ser baixado neste link. Se você usa Maven, pode importar facilmente o arquivo JAR em seu aplicativo adicionando o código a seguir ao arquivo pom.xml do seu projeto.
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.xls</artifactId>
<version>16.1.3</version>
</dependency>
</dependencies>
Crie um documento Excel em Java
Spire.XLS for Java oferece uma variedade de classes e interfaces que você pode usar para criar e editar documentos Excel. Aqui está uma lista de classes, propriedades e métodos importantes envolvidos neste artigo.
| Membro | Descrição |
| Aula de apostila | Representa um modelo de pasta de trabalho do Excel. |
| Método Workbook.getWorksheets().add() | Adiciona uma planilha à pasta de trabalho. |
| Método Workbook.saveToFile() | Salva a pasta de trabalho em um documento Excel. |
| Aula de planilha | Representa uma planilha em uma pasta de trabalho. |
| Método Worksheet.getRange() | Obtém uma célula ou intervalo de células específico da planilha. |
| Método Worksheet.insertArray() | Importa dados de uma matriz para uma planilha. |
| Classe CellRange | Representa uma célula ou intervalo de células na planilha. |
| Método CellRange.setValue() | Define o valor de uma célula. |
| Método CellRange.getValue() | Obtém o valor de uma célula. |
A seguir estão as etapas para criar um documento Excel do zero usando Spire.XLS for Java.
- Crie um objeto Pasta de trabalho.
- Adicione uma planilha usando o método Workbook.getWorksheets().add().
- Grave dados em uma célula específica usando o método Worksheet.getRange.setValue().
- Importe dados de um array para a planilha usando o método Worksheet.insertArray().
- Salve a pasta de trabalho em um documento Excel usando o método Workbook.saveToFile().
- Java
import com.spire.xls.*;
public class CreateSpreadsheet {
public static void main(String[] args) {
//Create a Workbook object
Workbook wb = new Workbook();
//Remove default worksheets
wb.getWorksheets().clear();
//Add a worksheet and name it "Employee"
Worksheet sheet = wb.getWorksheets().add("Employee");
//Merge the cells between A1 and G1
sheet.getRange().get("A1:G1").merge();
//Write data to A1 and apply formatting to it
sheet.getRange().get("A1").setValue("Basic Information of Employees of Huanyu Automobile Company");
sheet.getRange().get("A1").setHorizontalAlignment(HorizontalAlignType.Center);
sheet.getRange().get("A1").setVerticalAlignment(VerticalAlignType.Center);
sheet.getRange().get("A1").getStyle().getFont().isBold(true);
sheet.getRange().get("A1").getStyle().getFont().setSize(13);
//Set row height of the first row
sheet.setRowHeight(1,30);
//Create a two-dimensional array
String[][] twoDimensionalArray = new String[][]{
{"Name", "Gender", "Birth Date", "Educational Background", "Contact Number", "Position", "ID"},
{"Allen", "Male", "1990-02-10", "Bachelor", "24756854", "Mechanic", "0021"},
{"Patrick", "Male", "1985-06-08", "Master", "59863247", "Mechanic", "0022"},
{"Jenna", "Female", "1989-11-25", "Bachelor", "79540352", "Sales", "0023"},
{"Tommy", "Male", "1988-04-16", "Master", "52014060", "Mechanic", "0024"},
{"Christina", "Female", "1998-01-21", "Bachelor", "35401489", "HR", "0025"}
};
//Import data from DataTable to worksheet
sheet.insertArray(twoDimensionalArray,2,1);
//Set row height of a range
sheet.getRange().get("A2:G7").setRowHeight(15);
//Set column width
sheet.setColumnWidth(2,15);
sheet.setColumnWidth(3,21);
sheet.setColumnWidth(4,15);
//Set border style of a range
sheet.getRange().get("A2:G7").borderAround(LineStyleType.Medium);
sheet.getRange().get("A2:G7").borderInside(LineStyleType.Thin);
sheet.getRange().get("A2:G2").borderAround(LineStyleType.Medium);
sheet.getRange().get("A2:G7").getBorders().setKnownColor(ExcelColors.Black);
//Save to a .xlsx file
wb.saveToFile("output/NewSpreadsheet.xlsx", FileFormat.Version2016);
}
}

Ler dados de uma planilha em Java
O método CellRange.getValue() retorna o valor numérico ou o valor do texto de uma célula como uma string. Para obter dados de uma planilha inteira ou de um intervalo de células, percorra as células dentro dela. A seguir estão as etapas para obter dados de uma planilha usando Spire.XLS for Java.
- Crie um objeto Pasta de trabalho.
- Carregue um documento Excel usando o método Workbook.loadFromFile().
- Obtenha uma planilha específica usando o método Workbook.getWorksheets().get(index).
- Obtenha o intervalo de células contendo dados usando o método Worksheet.getAllocatedRange().
- Itere pelas linhas e colunas para obter células dentro do intervalo e retorne o valor de cada célula usando o método CellRange.getValue().
- Java
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class ReadData {
public static void main(String[] args) {
//Create a Workbook object
Workbook wb = new Workbook();
//Load an existing Excel file
wb.loadFromFile("C:/Users/Administrator/Desktop/NewSpreadsheet.xlsx");
//Get the first worksheet
Worksheet sheet = wb.getWorksheets().get(0);
//Get the cell range containing data
CellRange locatedRange = sheet.getAllocatedRange();
//Iterate through the rows
for (int i = 0; i < locatedRange.getRows().length; i++) {
//Iterate through the columns
for (int j = 0; j < locatedRange.getColumnCount(); j++) {
//Get data of a specific cell
System.out.print(locatedRange.get(i + 1, j + 1).getValue() + " ");
}
System.out.println();
}
}
}

Atualizar um documento Excel em Java
Para alterar o valor de uma determinada célula, basta reatribuir um valor a ela usando o método Worksheet.getRange().setValue(). A seguir estão as etapas detalhadas.
- Crie um objeto Pasta de trabalho.
- Carregue um documento Excel usando o método Workbook.LoadFromFile().
- Obtenha uma planilha específica por meio da propriedade Workbook.Worksheets[index].
- Altere o valor de uma célula específica por meio da propriedade Worksheet.Range.Value.
- Salve a pasta de trabalho em um arquivo Excel usando o método Workbook.SaveToFile().
- Java
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class UpdateExcel {
public static void main(String[] args) {
//Create a Workbook object
Workbook wb = new Workbook();
//Load an existing Excel file
wb.loadFromFile("C:/Users/Administrator/Desktop/NewSpreadsheet.xlsx");
//Get the first worksheet
Worksheet sheet = wb.getWorksheets().get(0);
//Change the value of a specific cell
sheet.getRange().get("A1").setValue("Updated Value");
//Save to file
wb.saveToFile("output/Updated.xlsx", ExcelVersion.Version2016);
}
}

Solicite uma licença temporária
Se desejar remover a mensagem de avaliação dos documentos gerados ou se livrar das limitações de função, por favor solicite uma licença de teste de 30 dias para você mesmo.