MS Excel은 텍스트를 여러 열로 분할하는 텍스트를 열 기능을 제공합니다. 분할은 공백, 쉼표, 특수 문자 등을 기반으로 할 수 있습니다. 이 기능을 자동화하기 위해 이 기사에서는 Java 애플리케이션 내에서 Excel의 Text to Columns를 수행하는 방법을 다룹니다. 단계별 가이드 및 코드 샘플은 Excel 워크시트의 열에 있는 텍스트를 분할하는 방법을 보여줍니다.
Excel에서 텍스트를 열로 분할하는 Java API
Excel 워크시트에서 텍스트를 열로 분할하기 위해 Aspose.Cells for Java를 사용합니다. Java 응용 프로그램 내에서 Excel 파일을 생성, 처리 및 변환할 수 있는 강력한 API입니다. API를 다운로드하거나 다음 Maven 구성을 사용하여 설치할 수 있습니다.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>21.6</version>
</dependency>
Java를 사용하여 Excel에서 텍스트를 열로 분할
다음은 Java를 사용하여 Excel에서 텍스트를 열로 분할하는 단계입니다.
- Workbook 클래스를 사용하여 Excel 파일을 로드합니다.
- 텍스트를 분할하려는 워크시트에 대한 참조를 가져옵니다.
- 셀에 값을 추가합니다(선택 사항).
- TxtLoadOptions 클래스의 인스턴스를 만들고 TxtLoadOptions.setSeparator(value) 메서드를 사용하여 분할 문자를 지정합니다.
- Worksheet.getCells().textToColumns(int row, int column, int totalRows, TxtLoadOptions options) 메서드를 사용하여 텍스트를 열로 분할합니다.
- Workbook.save(fileName, SaveFormat.XLSX) 메서드를 사용하여 Excel 파일을 저장합니다.
다음 코드 샘플은 Excel 워크시트에서 텍스트를 열로 분할하는 방법을 보여줍니다.
// 통합 문서를 엽니다.
Workbook wb = new Workbook("workbook.xlsx");
// 첫 번째 워크시트에 액세스합니다.
Worksheet ws = wb.getWorksheets().get(0);
// 열 A에 사람 이름을 추가합니다. 빠른 이름과 성은 공백으로 구분됩니다.
ws.getCells().get("A1").putValue("John Teal");
ws.getCells().get("A2").putValue("Peter Graham");
ws.getCells().get("A3").putValue("Brady Cortez");
ws.getCells().get("A4").putValue("Mack Nick");
ws.getCells().get("A5").putValue("Hsu Lee");
// 공백을 구분 기호로 사용하여 텍스트 로드 옵션을 만듭니다.
TxtLoadOptions opts = new TxtLoadOptions();
opts.setSeparator(' ');
// TextToColumns() 메서드를 사용하여 열 A를 두 개의 열로 분할합니다.
// 이제 열 A에는 이름이 있고 열 B에는 두 번째 이름이 있습니다.
ws.getCells().textToColumns(0, 0, 5, opts);
// 통합 문서를 xlsx 형식으로 저장합니다.
wb.save("TextToColumns.xlsx");
산출
무료 API 라이선스 받기
평가 제한 없이 API를 사용하기 위해 임시 라이선스를 취득할 수 있습니다.
결론
이 기사에서는 Java를 사용하여 Excel의 텍스트를 열 기능으로 구현하는 방법을 배웠습니다. 코드 샘플은 몇 단계로 열의 텍스트를 여러 열로 분할하는 방법을 보여주었습니다. 문서를 사용하여 Aspose.Cells for Java에 대해 자세히 알아볼 수 있습니다. 문의 사항이 있는 경우 포럼을 통해 문의하십시오.