2016-05-12 4 views
-1

Мне нужно объединить два листа в один.Java - объединить два листа Excel в один

Например. Я имею excel файл test.xls с двумя листами, sheet0 и sheet1. Оба листа имеют текст и таблицу.

Я хотел бы объединить их так слитый лист будет выглядеть следующим образом:

  • текст из sheet0
  • стол из sheet0
  • текст из sheet1
  • стол из sheet1

Мне нужно сделать это на Java.

Есть ли простой способ сделать это? Что-то вроде:

HSSFWorkbook book = new HSSFWorkbook("/tmp/test.xls"); 
HSSFSheet sheet0 = book.getSheetAt(0); 
HSSFSheet sheet1 = book.getSheetAt(1); 
sheet0.merge(sheet1); //or combine or something 

ответ

1

Не нашли такой метод в Пои API

В противном случае, вы можете вручную добавить содержимое sheet1 в sheet0 как:

int lastRowNum1 = sheet1.getLastRowNum(); 

int i=0; 
int currentLinePos=sheet0.getLastRowNum(); 
while (i <= lastRowNum1){ 
    Row currentRow = sheet1.getRow(i++); 
    Row copiedRow = sheet0.createRow(currentLinePos++); 
    // code that copy the content of currentRow into copiedRow 
    // such as copying every cells 
    // or try copiedRow = currentRow; but not sure it will copy the cells 
} 
Смежные вопросы