Проблема с записью файла Excel несколько раз - PullRequest
2 голосов
/ 21 февраля 2020

Мой код пытается загрузить пользовательские данные в файл Excel. Когда пользователь вводит данные из приложения в первый раз, он записывает данные в файл Excel. Но проблема возникла, когда пользователь пытается вставить данные во второй раз. Это просто написание той же первой строки. Вот мой код.

    public void LibrarianUpdateData(String Name,String IC,String Date){

    XSSFWorkbook wb = new XSSFWorkbook();
    XSSFSheet librarianSheet = wb.createSheet("Librarian");

    String[][] datatypes = {
            {Name,IC,Date}
    };

    int Rownum = librarianSheet.getLastRowNum();
    System.out.println(Rownum);
    System.out.println("Updating excel");
    System.out.println("Initial Array:");

    for(int i = 0 ; i < 3; i++){
        System.out.println(datatypes[0][i]);
    }

    for (String[] datatype : datatypes) {
        Row row = librarianSheet.createRow(Rownum++);
        int colNum = 0;
        for (String field : datatype) {
            Cell cell = row.createCell(colNum++);
            if (field instanceof String) {
                cell.setCellValue((String) field);
            }
        }
    }
    System.out.println(Rownum);
    try {

        // this Writes the workbook
        FileOutputStream out = new FileOutputStream(new File("AttendenceList.xlsx"));
        wb.write(out);
        out.close();
        System.out.println("AttendenceList.xlsx written successfully on disk.");
    }
    catch (Exception e) {
        e.printStackTrace();
    }
}

Мой мозг говорит, что данные записаны в одной строке. Верна ли моя гипотеза? Как изменить этот код, чтобы он записал следующую строку?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...