소개
Aspose.Cells FOSS for Java은 pure-Java 17, MIT-라이선스 라이브러리로, Microsoft Office 의존성 없이 Excel .xlsx 워크북을 생성·조작할 수 있습니다. 이 포스트에서는 가장 일반적인 스프레드시트 관리 작업인 워크북 생성, 파일 로드, 셀 작업, 결과 저장을 단계별로 안내합니다.
빠른 시작
시작하려면 pom.xml에 Maven 의존성을 추가하세요:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-cells-foss</artifactId>
<version>26.5.0</version>
</dependency>라이선스 파일이나 API 키가 필요하지 않습니다. 이 라이브러리는 MIT 라이선스 하에 완전 오픈소스입니다.
워크북 만들기
Workbook() 생성자는 기본 시트 하나가 포함된 새 빈 워크북을 생성합니다:
import com.aspose.cells.foss.Workbook;
import com.aspose.cells.foss.Worksheet;
Workbook workbook = new Workbook();
WorksheetCollection sheets = workbook.getWorksheets();
Worksheet sheet = sheets.get(0);
System.out.println(sheet.getName()); // Sheet1
명명된 시트를 추가하려면 WorksheetCollection.add(sheetName)을 사용하고, 시트를 제거하려면 removeAt(sheetName)을 사용하십시오:
int idx = workbook.getWorksheets().add("Report");
workbook.getWorksheets().get(idx).setName("Report");
workbook.getWorksheets().removeAt("Sheet1");
기존 파일 로드
Workbook(fileName)에 파일 경로를 전달하여 기존 .xlsx 워크북을 엽니다:
Workbook workbook = new Workbook("data/report.xlsx");
System.out.println("Sheets: " + workbook.getWorksheets().getCount());
입력 스트림(예: 데이터베이스 또는 HTTP 응답)에는 Workbook(stream)을 사용하십시오:
try (java.io.InputStream is = new java.io.FileInputStream("data/report.xlsx")) {
Workbook workbook = new Workbook(is);
}
셀 읽기 및 쓰기
Worksheet.getCells()은(는) Cells 컬렉션을 반환합니다. 개별 셀은 이름이나 0부터 시작하는 행/열 인덱스로 접근할 수 있습니다:
import com.aspose.cells.foss.Cells;
import com.aspose.cells.foss.Cell;
WorksheetCollection sheets = workbook.getWorksheets();
Cells cells = sheets.get(0).getCells();
// Write by cell name
cells.get("A1").putValue("Product");
cells.get("B1").putValue("Revenue");
// Write by row/column index
cells.get(1, 0).putValue("Widget A"); // A2
cells.get(1, 1).putValue(45000); // B2
// Read back
String name = cells.get("A2").getStringValue();
Object rev = cells.get("B2").getValue();
System.out.println(name + ": " + rev);
수식 설정
셀에 수식 문자열을 저장하려면 Cell.setFormula()를 사용하십시오. 워크북을 저장하고 다시 로드할 때 수식이 평가됩니다:
cells.get("B3").setFormula("=SUM(B2:B2)");
System.out.println(cells.get("B3").getFormula()); // =SUM(B2:B2)
수식 결과는 워크북을 저장하고 다시 로드할 때 해결됩니다.
워크북 저장
Workbook.save(fileName)가 워크북을 기록합니다; 형식은 파일 확장자에 따라 결정됩니다 (.xlsx은 Excel 2007+ 파일을 생성합니다):
workbook.save("output/result.xlsx");
큰 워크북은 항상 try-with-resources로 감싸 파일 핸들을 즉시 해제하도록 하십시오:
try (Workbook workbook = new Workbook("data/input.xlsx")) {
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Updated");
workbook.save("data/output.xlsx");
}
다음에 탐색할 내용
Aspose.Cells FOSS for Java는 셀 조작을 넘어 워크시트 수준 작업을 위한 API를 포함합니다:
- 워크시트 보호:
protect()/unprotect()onWorksheet - AutoFilter:
Worksheet.getAutoFilter()프로그래밍 방식 데이터 필터링을 위해 - 셀 스타일:
Cell.getStyle()/setStyle()withStyleproperties - 병합된 셀:
Cells.merge(firstRow, firstColumn, totalRows, totalColumns)
전체 API 안내를 보려면 developer guide와 API reference를 참고하십시오.
시작하기
위의 예제는 Aspose.Cells FOSS에서 Java를 위한 가장 일반적인 스프레드시트 관리 작업을 다룹니다. 전체 API 안내(검증, 차트 및 서식 포함)를 보려면 developer guide를 참고하십시오.