Java: Excel 워크시트에 데이터 쓰기

2023-12-06 02:57:36

메이븐으로 설치

<dependency>
    <groupId>e-iceblue</groupId>
    <artifactId>spire.xls</artifactId>
    <version>14.1.3</version>
</dependency>
    

관련된 링크들

Excel에는 대량의 데이터를 정돈된 스프레드시트에 신속하게 저장하고 구성하는 기능이 있습니다. 하지만 수동으로 셀에 데이터를 하나씩 입력하면 시간이 많이 걸립니다. 프로그래밍을 통해 Excel 파일 생성을 자동화하면 많은 시간과 에너지를 절약할 수 있습니다. 이 기사에서는 방법을 소개합니다 Spire.XLS for Java사용하여 Java로 Excel 워크시트에 데이터를 씁니다.

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>
    

특정 셀에 텍스트 또는 숫자 값 쓰기

워크시트의 특정 셀은 Worksheet.get(int row, int columns) 메소드를 통해 접근할 수 있습니다. 그런 다음 IXLSRange.setValue() 또는 IXLSRange.setNumberValue() 메서드를 사용하여 셀에 텍스트 값이나 숫자 값을 추가할 수 있습니다. 자세한 단계는 다음과 같습니다.

  • 통합 문서 개체를 만듭니다.
  • Workbook.getWorksheets().get() 메서드를 사용하여 첫 번째 워크시트를 가져옵니다.
  • Workhseet.get() 메서드를 사용하여 특정 셀을 가져옵니다.
  • IXLSRange.setValue() 또는 IXLSRange.setNumberValue() 메서드를 사용하여 셀에 텍스트 값이나 숫자 값을 추가합니다.
  • Workbook.saveToFile() 메서드를 사용하여 통합 문서를 Excel 파일에 저장합니다.
  • Java
import com.spire.xls.*;
    
    public class WriteToCells {
    
        public static void main(String[] args) {
    
            //Create a Workbook object
            Workbook workbook = new Workbook();
    
            //Get the first worksheet
            Worksheet worksheet = workbook.getWorksheets().get(0);
    
            //Write data to specific cells
            worksheet.get(1,1).setValue("Name");
            worksheet.get(1,2).setValue("Age");
            worksheet.get(1,3).setValue("Department");
            worksheet.get(1,4).setValue("Hiredate");
            worksheet.get(2,1).setValue("Hazel");
            worksheet.get(2,2).setNumberValue(29);
            worksheet.get(2,3).setValue("Marketing");
            worksheet.get(2,4).setValue("2019-07-01");
            worksheet.get(3,1).setValue("Tina");
            worksheet.get(3,2).setNumberValue(31);
            worksheet.get(3,3).setValue("Technical Support");
            worksheet.get(3,4).setValue("2015-04-27");
    
            //Auto fit column widths
            worksheet.getAllocatedRange().autoFitColumns();
    
            //Apply a style to the first row
            CellStyle style = workbook.getStyles().addStyle("newStyle");
            style.getFont().isBold(true);
            worksheet.getRange().get(1,1,1,4).setStyle(style);
    
            //Save to an Excel file
            workbook.saveToFile("output/WriteToCells.xlsx", ExcelVersion.Version2016);
        }
    }

Java: Write Data to Excel Worksheets

워크시트에 배열 쓰기

Spire.XLS for Java 프로그래머가 워크시트의 지정된 셀 범위에 1차원 배열 또는 2차원 배열을 쓸 수 있도록 Worksheet.insertArrary() 메서드를 제공합니다. 워크시트에 배열을 쓰는 단계는 다음과 같습니다.

  • 통합 문서 개체를 만듭니다.
  • Workbook.getWorksheets().get() 메서드를 사용하여 첫 번째 워크시트를 가져옵니다.
  • 1차원 배열과 2차원 배열을 만듭니다.
  • Worksheet.insertArray() 메서드를 사용하여 워크시트에 배열을 삽입합니다.
  • Workbook.saveToFile() 메서드를 사용하여 통합 문서를 Excel 파일에 저장합니다.
  • Java
import com.spire.xls.*;
    
    public class WriteArrayToWorksheet {
    
        public static void main(String[] args) {
    
            //Create a Workbook instance
            Workbook workbook = new Workbook();
    
            //Get the first worksheet
            Worksheet worksheet = workbook.getWorksheets().get(0);
    
            //Create a one-dimensional array
            String[] oneDimensionalArray = new String[]{"January", "February", "March", "April","May", "June"};
    
            //Write the array to the first row of the worksheet
            worksheet.insertArray(oneDimensionalArray, 1, 1, false);
    
            //Create a two-dimensional array
            String[][] twoDimensionalArray = new String[][]{
                    {"Name", "Age", "Sex", "Dept.", "Tel."},
                    {"John", "25", "Male", "Development","654214"},
                    {"Albert", "24", "Male", "Support","624847"},
                    {"Amy", "26", "Female", "Sales","624758"}
            };
    
            //Write the array to the worksheet starting from the cell A3
            worksheet.insertArray(twoDimensionalArray, 3, 1);
    
            //Auto fit column width in the located range
            worksheet.getAllocatedRange().autoFitColumns();
    
            //Apply a style to the first and the third row
            CellStyle style = workbook.getStyles().addStyle("newStyle");
            style.getFont().isBold(true);
            worksheet.getRange().get(1,1,1,6).setStyle(style);
            worksheet.getRange().get(3,1,3,6).setStyle(style);
    
            //Save to an Excel file
            workbook.saveToFile("output/WriteArrays.xlsx", ExcelVersion.Version2016);
        }
    }

Java: Write Data to Excel Worksheets

워크시트에 DataTable 쓰기

DataTable의 데이터를 워크시트로 가져오려면 Worksheet.insertDataTable() 메서드를 사용합니다. 자세한 단계는 다음과 같습니다.

  • 통합 문서 개체를 만듭니다.
  • Workbook.getWorksheets().get() 메서드를 사용하여 첫 번째 워크시트를 가져옵니다.
  • DataTable을 만들고 Worksheet.insertDataTable() 메서드를 사용하여 워크시트의 지정된 위치에 DataTable을 씁니다.
  • Workbook.saveToFile() 메서드를 사용하여 통합 문서를 Excel 파일에 저장합니다.
  • Java
import com.spire.data.table.DataRow;
    import com.spire.data.table.DataTable;
    import com.spire.xls.*;
    
    public class WriteDataTableToWorksheet {
    
        public static void main(String[] args) throws Exception {
    
            //Create a Workbook instance
            Workbook workbook = new Workbook();
    
            //Get the first worksheet
            Worksheet worksheet = workbook.getWorksheets().get(0);
    
            //Create a DataTable object
            DataTable dataTable = new DataTable();
            dataTable.getColumns().add("SKU", Integer.class);
            dataTable.getColumns().add("NAME", String.class);
            dataTable.getColumns().add("PRICE", String.class);
    
            //Create rows and add data
            DataRow dr = dataTable.newRow();
            dr.setInt(0, 512900512);
            dr.setString(1,"Wireless Mouse M200");
            dr.setString(2,"$85");
            dataTable.getRows().add(dr);
            dr = dataTable.newRow();
            dr.setInt(0,512900637);
            dr.setString(1,"B100 Cored Mouse ");
            dr.setString(2,"$99");
            dataTable.getRows().add(dr);
            dr = dataTable.newRow();
            dr.setInt(0,512901829);
            dr.setString(1,"Gaming Mouse");
            dr.setString(2,"$125");
            dataTable.getRows().add(dr);
            dr = dataTable.newRow();
            dr.setInt(0,512900386);
            dr.setString(1,"ZM Optical Mouse");
            dr.setString(2,"$89");
            dataTable.getRows().add(dr);
    
            //Write datatable to the worksheet
            worksheet.insertDataTable(dataTable,true,1,1,true);
    
            //Auto fit column width in the located range
            worksheet.getAllocatedRange().autoFitColumns();
    
            //Apply a style to the first row
            CellStyle style = workbook.getStyles().addStyle("newStyle");
            style.getFont().isBold(true);
            worksheet.getRange().get(1,1,1,3).setStyle(style);
    
            //Save to an Excel file
            workbook.saveToFile("output/WriteDataTable.xlsx", ExcelVersion.Version2016);
        }
    }

Java: Write Data to Excel Worksheets

임시 라이센스 신청

생성된 문서에서 평가 메시지를 제거하고 싶거나, 기능 제한을 없애고 싶다면 30일 평가판 라이센스 요청 자신을 위해.

또한보십시오