Java: Daten in Excel-Arbeitsblätter schreiben

2023-12-06 02:59:16

Mit Maven installieren

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

verwandte Links

Excel bietet die Möglichkeit, große Datenmengen schnell in übersichtlichen Tabellen zu speichern und zu organisieren. Es ist jedoch zeitaufwändig, wenn wir Daten nacheinander manuell in Zellen eingeben. Die Automatisierung der Erstellung von Excel-Dateien durch Programmierung kann uns viel Zeit und Energie sparen. In diesem Artikel erfahren Sie, wie das geht Schreiben Sie Daten in Excel-Arbeitsblätter in Java, indem Sie Spire.XLS for Javaverwenden.

Installieren Sie Spire.XLS for Java

Zunächst müssen Sie die Datei Spire.Xls.jar als Abhängigkeit zu Ihrem Java-Programm hinzufügen. Die JAR-Datei kann über diesen Link heruntergeladen werden. Wenn Sie Maven verwenden, können Sie die JAR-Datei einfach in Ihre Anwendung importieren, indem Sie den folgenden Code zur pom.xml-Datei Ihres Projekts hinzufügen.

<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>
    

Schreiben Sie Text- oder Zahlenwerte in bestimmte Zellen

Auf eine bestimmte Zelle in einem Arbeitsblatt kann mit der Methode Worksheet.get(int row, int Column) zugegriffen werden. Anschließend können Sie der Zelle mit der Methode IXLSRange.setValue() oder IXLSRange.setNumberValue() einen Textwert oder einen Zahlenwert hinzufügen. Im Folgenden finden Sie die detaillierten Schritte.

  • Erstellen Sie ein Workbook-Objekt.
  • Rufen Sie das erste Arbeitsblatt mit der Methode Workbook.getWorksheets().get() ab.
  • Rufen Sie eine bestimmte Zelle mit der Methode Workhseet.get() ab.
  • Fügen Sie der Zelle mit der Methode IXLSRange.setValue() oder IXLSRange.setNumberValue() einen Textwert oder einen Zahlenwert hinzu.
  • Speichern Sie die Arbeitsmappe mit der Methode Workbook.saveToFile() in einer Excel-Datei.
  • 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

Schreiben Sie Arrays in ein Arbeitsblatt

Spire.XLS for Java bietet die Methode Worksheet.insertArrary(), mit der Programmierer eindimensionale Arrays oder zweidimensionale Arrays in den angegebenen Zellbereich eines Arbeitsblatts schreiben können. Die Schritte zum Schreiben von Arrays in ein Arbeitsblatt sind wie folgt:

  • Erstellen Sie ein Workbook-Objekt.
  • Rufen Sie das erste Arbeitsblatt mit der Methode Workbook.getWorksheets().get() ab.
  • Erstellen Sie ein eindimensionales Array und ein zweidimensionales Array.
  • Fügen Sie die Arrays mit der Methode Worksheet.insertArray() in das Arbeitsblatt ein.
  • Speichern Sie die Arbeitsmappe mit der Methode Workbook.saveToFile() in einer Excel-Datei.
  • 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

Schreiben Sie eine Datentabelle in ein Arbeitsblatt

Um Daten aus einer DataTable in ein Arbeitsblatt zu importieren, verwenden Sie die Methode Worksheet.insertDataTable(). Im Folgenden finden Sie die detaillierten Schritte.

  • Erstellen Sie ein Workbook-Objekt.
  • Rufen Sie das erste Arbeitsblatt mit der Methode Workbook.getWorksheets().get() ab.
  • Erstellen Sie eine Datentabelle und schreiben Sie die Datentabelle mit der Methode Worksheet.insertDataTable() an der angegebenen Stelle in das Arbeitsblatt.
  • Speichern Sie die Arbeitsmappe mit der Methode Workbook.saveToFile() in einer Excel-Datei.
  • 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

Beantragen Sie eine temporäre Lizenz

Wenn Sie die Bewertungsmeldung aus den generierten Dokumenten entfernen oder die Funktionseinschränkungen beseitigen möchten, wenden Sie sich bitte an uns Fordern Sie eine 30-Tage-Testlizenz an für sich selbst.

Siehe auch