Witam serdecznie.
Mam dość dziwny problem w Javie.
Otóż program, który usiłuję napisać ma za zadanie kopiowanie zawartości poszczególnych komórek z pliku .xlsx i zapisywanie do oddzielnego pliku .xlsx.
Tworzę sobie nową komórkę w docelowym pliku:
Cell cell2C6 = row14.createCell(2);
I następnie wpisuję do niej zawartość komórki (która jest liczbą) z pliku źródłowego:
cell2C6.setCellValue(cellC6.getNumericCellValue());
I wszystko ładnie, prawidłowo śmiga.
Cały problem polega na tym, że zawartość komórki w pliku źródłowy jest zmienna i raz jest to int, a raz string. Dlatego też muszę zastosować sprawdzanie zawartości komórki źródłowej przed wpisaniem. A robię to tak:
switch (cellC6.getCellType()) {
case Cell.CELL_TYPE_STRING:
cell2C6.setCellValue(cellC6.getRichStringCellValue().toString());
break;
case Cell.CELL_TYPE_NUMERIC:
cell2C6.setCellValue(cellC6.getNumericCellValue());
break;
}
Program odpala się bez żadnych błędów, ale docelowa komórka zostaje pusta. Próbowałem zamieniać switch'a na if'a, ale to też nic nie daje.
Nie mam pojęcia gdzie leży problem.
Będę bardzo wdzięczny jeśli ktoś mi powie o co tutaj chodzi.
Pozdrawiam,
Michał.
up