GroupDocs.Parser를 사용하여 RTF 문서에서 테이블을 구문 분석하려면 Java 환경에서 다음 단계를 따르십시오:
- Parser 인스턴스를 생성하고 대상 RTF 파일을 로드합니다.
- 파일이 구조화된 테이블 추출을 지원하는지 확인합니다.
- API를 사용하여 문서에서 테이블 요소를 가져옵니다.
- 분석, 보고서 또는 자동화 시스템에서 추출된 데이터를 활용합니다.
GroupDocs.Parser를 사용하여 RTF 문서에서 테이블을 구문 분석하려면 Java 환경에서 다음 단계를 따르십시오:
// 테이블 요소를 포함하는 Parser가 있는 입력 문서를 로드합니다.
try (Parser parser = new Parser("input.rtf"))
{
// 문서 유형이 테이블 인식을 허용하는지 확인합니다.
if (!parser.getFeatures().isTables()) {
System.out.println("테이블을 지원하지 않는 파일에 대한 논리를 추가합니다.");
return;
}
// 테이블 구조 해석 규칙을 정의합니다.
TemplateTableLayout layout = new TemplateTableLayout(
java.util.Arrays.asList(new Double[]{50.0, 95.0, 275.0, 415.0, 485.0, 545.0}),
java.util.Arrays.asList(new Double[]{325.0, 340.0, 365.0, 395.0}));
// 테이블 추출 파라미터를 설정합니다.
PageTableAreaOptions options = new PageTableAreaOptions(layout);
// 로드된 문서에서 테이블 추출을 실행합니다.
Iterable<PageTableArea> tables = parser.getTables(options);
// 결과에서 추출된 각 테이블을 처리합니다.
for (PageTableArea t : tables)
{
}
}
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser</artifactId>
<version>24.9</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://repository.groupdocs.com/repo/</url>
</repository>
</repositories>
테이블을 읽는 것을 넘어 GroupDocs.Parser는 문서를 처리하는 작업을 향상시키기 위해 일반 텍스트, 시각적 요소, 임베디드 메타데이터 및 구조화된 객체를 캡처하는 기능을 지원합니다.
PDF, Word, Excel, HTML과 같은 표준 문서 유형에서 테이블을 높은 정확도로 추출하는 것을 지원합니다.
스프레드시트, 문서 및 보고서에서 테이블 데이터를 가져오면서 구조와 정렬을 유지합니다.
레이아웃 감지를 제어하고, 헤더 및 푸터를 관리하며, 유연한 구성 옵션으로 추출을 세부 조정할 수 있습니다.
이 예제는 GroupDocs.Parser를 사용하여 Excel (XLSX) 파일에서 테이블 내용을 추출하고 반복하는 방법을 보여줍니다.
// Parser를 Excel 파일로 초기화합니다.
try (Parser parser = new Parser("input.pdf"))
{
// 이 문서에 대해 테이블 추출이 지원되지 않으면 종료합니다.
if (!parser.getFeatures().isTables())
{
return;
}
// 테이블 레이아웃을 찾기 위한 규칙을 적용합니다.
TemplateTableLayout layout = new TemplateTableLayout(
java.util.Arrays.asList(new Double[]{50.0, 95.0, 275.0, 415.0, 485.0, 545.0}),
java.util.Arrays.asList(new Double[]{325.0, 340.0, 365.0, 395.0}));
// 테이블 추출 설정을 구성합니다.
PageTableAreaOptions options = new PageTableAreaOptions(layout);
// 추출 프로세스를 호출합니다.
Iterable<PageTableArea> tables = parser.getTables(options);
// 모든 파싱된 테이블 구조를 반복합니다.
for (PageTableArea t : tables)
{
// 테이블 내의 각 행을 반복합니다.
for (int row = 0; row < t.getRowCount(); row++)
{
// 현재 행 내의 각 셀을 처리합니다.
for (int column = 0; column < t.getColumnCount(); column++)
{
// 현재 셀의 내용을 접근하고 읽습니다.
PageTableAreaCell cell = t.getCell(row, column);
if (cell != null)
{
// 각 테이블 셀의 텍스트 값을 출력합니다.
System.out.print(cell.getText());
System.out.print(" | ");
}
}
}
}
}