Pergunta

Eu tenho um ArrayList que contém informações sobre funcionários, tais como nome, sName e endereço.Eu estou escrevendo isto para uma pasta de trabalho do Excel usando o apache poi.

Na folha de excel que eu quero todas as informações sobre um funcionário para vir na mesma linha.Eu consegui escrever o primeiro nome na linha 1 e célula de 0 (linha 0 detém títulos).Tudo é verticalmente em boa ordem.Ao tentar adicionar um apelido tudo começa a saltar aqui e ali.

Como faço para obter o sName escrito no lugar certo?

Aqui está parte da minha código do excel

private void writeEmployeeInfo() {

    ListIterator<Employee> employeeListIterator = Employee
            .getEmployeeList().listIterator();

    int rowIndex = 1;
    int cellIndex = 0;


    while (employeeListIterator.hasNext()) {

        Employee employee = employeeListIterator.next();

        Row row = sheet.createRow(rowIndex++);

        Cell cell = row.createCell(cellIndex);

        cell.setCellValue(employee.getfName());

// tentando adicionar o sobrenome de funcionários na direita da célula.

            while(employeeListIterator.hasNext()){
            Employee emp = employeeListIterator.next();
            row = sheet.createRow(rowIndex++);
            cell = row.createCell(cellIndex++);
            cell.setCellValue(emp.getsName());
        }
    }
}

Este é meu primeiro post aqui, então se eu tiver escrito ou feito coisas que eu um pobre maneira, por favor, me diga o que fazer, então vai ser fácil para você as pessoas a entender a minha pergunta.

Aqui está um link para o projeto, se você precisar de ver mais código: http://1drv.ms/1kSGfDm

Foi útil?

Solução

Você não postar como você está adicionando ao outro células.Tente algo como isso:

private void writeEmployeeInfo() {

    ListIterator<Employee> employeeListIterator = Employee
            .getEmployeeList().listIterator();

    int rowIndex = 1;

    while (employeeListIterator.hasNext()) {

        Employee employee = employeeListIterator.next();

        Row row = sheet.createRow(rowIndex++);

        row.createCell(0).setCellValue(employee.getfName());
        row.createCell(1).setCellValue(employee.getSName());
        row.createCell(2).setCellValue(employee.getAddress);
    }
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top