A apresentação discute a biblioteca Apache POI, que fornece APIs para ler e escrever arquivos do Microsoft Office. Apresenta as principais funcionalidades da biblioteca para manipular planilhas Excel, documentos Word e apresentações PowerPoint. Também aborda outras APIs como para lidar com mensagens de email do Outlook e arquivos Visio e Publisher.
2. Apresentação
Cristiano Agosti - @agosti
Professor da Universidade do Oeste de Santa Catarina
Desenvolvedor JEE
Incentivador do uso de Software Livre
Participante do OeSC-livre.org
Luzitan Orso Zancan - @luzitan
Programador linguagens C e JEE
Incentivador do uso de Software Livre
3. Agenda
• Motivação
• Fundação Apache
• Apache POI
• Streams
• Configurações
• API Componentes
• Exemplos
• Integração com PHP e Ruby
• Como Participar
• Quem utiliza
4. Motivação
Detecção de Plágio em Arquivos
http://www.copiaecola.com.br
18. Excel (HSSF + XSSF)
• API Java para criação, modificação, leitura e escrita no
Microsoft Excel
• HSSF - Excel 97 (-2007)
• XSSF - Excel 2007 (.xlsx)
• http://poi.apache.org/spreadsheet/quick-guide.html
• http://poi.apache.org/spreadsheet/examples.html
19. Excel (HSSF + XSSF)
• Criar workbook, planilha, células, • Definir em uma planilha: área de
• Trabalhar com diferentes tipos de impressão, número de páginas no
células de dados rodapé, selecionar, definir zoom,
• Interagir sobre linhas e céluas ajustar linhas
• Pegar o conteúdo de uma célula • Criar painéis congelados
• Extrair texto • Desenhar shapes e graficos 2d
• Alinhar células • Formatação Condicional
• Trabalhar com bordas • Autofiltros
• Cores e fundos • Objetos Embutidos
• Merge de células • Validação de dados
• Fontes • Hiperlinks
• Criar novas linhas em células • Ajustar colunas conforme o
• Criar dados no formatado definido conteúdo
pelo usuário • Setar comentários nas células
• Ajustar planilha em uma página • Nomear intervalos e células
• Imagens • Cabeçalhos e rodapés
30. PowerPoint (HSLF+XSLF)
• API Java para criação, modificação, leitura e escrita no
Microsoft PowerPoint
• HSLF - Word 97 (-2007)
• XSLF - não finalizado
• http://poi.apache.org/slideshow/how-to-shapes.html
36. Outlook (HSMF)
• Implementa manipulação das mensagens no formato do
Outlook
• MAPIMessage
• getDisplayFrom()
• getDisplayTo()
• getDisplayCC()
• getDisplayBCC()
• getSubject()
• getTextBody()
• getAttachmentFiles() - AttachmentChunks (attachFileName,
attachData)
37. HMEF (TNEF)
• Java API para acessar o Microsoft Transport Neutral
Encoding Files (TNEF)
• Manipulação dos arquivos do Outlook e Exchange
• Permite fácil extração dos dados do corpo da mensagem e
anexos
• Trabalhar com atributos da mensagem e do corpo
42. Apache POI e Ruby
• Compilar POI com http://gcc.gnu.org/java
• Gerar Ruby wrapper com http://www.swig.org
• http://poi.apache.org/poi-ruby.html
43. Apache POI e Ruby
Fonte: http://poi.apache.org/poi-ruby.html
44. Apache POI e Ruby
Fonte: http://poi.apache.org/poi-ruby.html
45. Quem utiliza o Apache POI
Arian Lashkov
(alaskov at lbank.lt)
http://nutch.apache.org
http://jasperforge.org
http://drupal.org
Fonte: http://poi.apache.org
46. Apache POI e Microsoft
São US$100 mil por ano
Fonte: http://meiobit.com/16589/a-necessidade-cria-estranhos-companheiros-de-
cama