메이븐으로 설치
<dependency> <groupId>e-iceblue</groupId> <artifactId>spire.xls</artifactId> <version>14.1.3</version></dependency>
관련된 링크들
Excel 스프레드시트는 사용자가 테이블의 데이터를 정렬, 분석 및 표시할 수 있는 널리 사용되는 파일 형식입니다. Excel 파일과 프로그래밍 방식으로 상호 작용하는 기능은 해당 기능을 소프트웨어에 자동화하고 통합하는 데 유용합니다. 이는 광범위한 데이터 세트, 복잡한 계산을 처리하거나 데이터를 동적으로 생성/업데이트할 때 특히 유용합니다. 이 기사에서는 다음 방법을 배웁니다 Java로 Excel 문서 생성, 읽기 또는 업데이트 Spire.XLS for Java사용합니다.
Spire.XLS for Java 설치
먼저 Spire.Xls.jar 파일을 Java 프로그램의 종속성으로 추가해야 합니다. JAR 파일은 이 링크에서 다운로드할 수 있습니다. Maven을 사용하는 경우 프로젝트의 pom.xml 파일에 다음 코드를 추가하여 애플리케이션에서 JAR 파일을 쉽게 가져올 수 있습니다.
<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>14.11.0</version> </dependency> </dependencies>
Java로 Excel 문서 만들기
Spire.XLS for Java는 Excel 문서를 생성하고 편집하는 데 사용할 수 있는 다양한 클래스와 인터페이스를 제공합니다. 다음은 이 기사와 관련된 중요한 클래스, 속성 및 메서드 목록입니다.
회원 | 설명 |
워크북 수업 | Excel 통합 문서 모델을 나타냅니다. |
Workbook.getWorksheets().add() 메서드 | 통합 문서에 워크시트를 추가합니다. |
Workbook.saveToFile() 메서드 | 통합 문서를 Excel 문서에 저장합니다. |
워크시트 수업 | 통합 문서의 워크시트를 나타냅니다. |
Worksheet.getRange() 메서드 | 워크시트에서 특정 셀이나 셀 범위를 가져옵니다. |
Worksheet.insertArray() 메서드 | 배열의 데이터를 워크시트로 가져옵니다. |
CellRange 클래스 | 워크시트의 셀 또는 셀 범위를 나타냅니다. |
CellRange.setValue() 메서드 | 셀의 값을 설정합니다. |
CellRange.getValue() 메서드 | 셀의 값을 가져옵니다. |
다음은 Spire.XLS for Java 사용하여 처음부터 Excel 문서를 만드는 단계입니다.
- 통합 문서 개체를 만듭니다.
- Workbook.getWorksheets().add() 메서드를 사용하여 워크시트를 추가합니다.
- Worksheet.getRange.setValue() 메서드를 사용하여 특정 셀에 데이터를 씁니다.
- Worksheet.insertArray() 메서드를 사용하여 배열의 데이터를 워크시트로 가져옵니다.
- Workbook.saveToFile() 메서드를 사용하여 통합 문서를 Excel 문서에 저장합니다.
- 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); } }
Java에서 워크시트 데이터 읽기
CellRange.getValue() 메서드는 셀의 숫자 값이나 텍스트 값을 문자열로 반환합니다. 전체 워크시트나 셀 범위의 데이터를 얻으려면 그 안의 셀을 반복하세요. 다음은 Spire.XLS for Java를 사용하여 워크시트의 데이터를 가져오는 단계입니다.
- 통합 문서 개체를 만듭니다.
- Workbook.loadFromFile() 메서드를 사용하여 Excel 문서를 로드합니다.
- Workbook.getWorksheets().get(index) 메서드를 사용하여 특정 워크시트를 가져옵니다.
- Worksheet.getAllocationRange() 메서드를 사용하여 데이터가 포함된 셀 범위를 가져옵니다.
- 행과 열을 반복하여 범위 내의 셀을 가져오고 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(); } } }
Java에서 Excel 문서 업데이트
특정 셀의 값을 변경하려면 Worksheet.getRange().setValue() 메서드를 사용하여 해당 셀에 값을 다시 할당하면 됩니다. 자세한 단계는 다음과 같습니다.
- 통합 문서 개체를 만듭니다.
- Workbook.LoadFromFile() 메서드를 사용하여 Excel 문서를 로드합니다.
- Workbook.Worksheets[index] 속성을 통해 특정 워크시트를 가져옵니다.
- Worksheet.Range.Value 속성을 통해 특정 셀의 값을 변경합니다.
- Workbook.SaveToFile() 메서드를 사용하여 통합 문서를 Excel 파일에 저장합니다.
- 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); } }
임시 라이센스 신청
생성된 문서에서 평가 메시지를 제거하고 싶거나, 기능 제한을 없애고 싶다면 30일 평가판 라이센스 요청 자신을 위해.