POI - SXSSFWorkbook - Excel обнаружил нечитаемый контент - PullRequest
3 голосов
/ 12 января 2012

У меня есть рабочая книга, которая действует как шаблон.Я попытался обновить значение ячейки в существующей строке, то есть значение имеет соседняя ячейка.Проблема заключается в том, что после создания файла и его открытия я получаю следующую ошибку: «Excel обнаружил нечитаемый контент в ....»

Я предполагаю, что причина в том, что SXSSFWorkbook обрабатывает только запись и, если строкасуществует, не может обновить содержимое строки, что повлечет за собой чтение, а затем запись - это правильно или у меня ошибка?

Спасибо

Ответы [ 2 ]

3 голосов
/ 18 октября 2012

Другая проблема заключается в том, что если вы используете addMergedRegion, значения CellRangeAddress для строк и столбцов должны быть в порядке возрастания номеров:

// Note that rows and columns for CellRangeAddress constructor have to be in ascending order
// The commented out line below will generate an error when opening the sheet:
// sheet.addMergedRegion(new CellRangeAddress(lastRow, lastRow-(rowsTobeCreated-1), 0, 0));
// In order this call works:
sheet.addMergedRegion(new CellRangeAddress(lastRow-(rowsTobeCreated-1), lastRow, 0, 0));
0 голосов
/ 13 июля 2012

Если у кого-то еще есть такая проблема, убедитесь, что длина вашего SheetName не слишком велика. Я получал эту ошибку при задании имени листа рабочей книги более 30 символов.

  XSSFWorkbook wb = new XSSFWorkbook();
  XSSFSheet sheet = wb.createSheet();
  wb.setSheetName(0, "Supporting Documentation"); // make sure this is not too long
...