Interface XlsReader


public interface XlsReader
SPI de leitura de planilha: transforma os bytes de um arquivo em linhas de String[], sem conhecimento de domínio. Cada app fornece a implementação — POI-SAX (onpetro), leitura própria (vantroba) ou CSV (thoms) — provando que o seam serve além de XLS.

O leitor NÃO parseia domínio: entrega células cruas ao rowConsumer; o mapeamento para entidades vive no XlsProcessor do app.

  • Method Details

    • readSheet

      void readSheet(byte[] conteudo, String nomeAba, BiConsumer<Integer,String[]> rowConsumer)
      Lê uma aba pelo nome, entregando cada linha ao consumidor.
      Parameters:
      conteudo - bytes do arquivo
      nomeAba - nome da aba a ler
      rowConsumer - callback (indiceLinha0based, celulas)
    • readDefaultSheet

      void readDefaultSheet(byte[] conteudo, BiConsumer<Integer,String[]> rowConsumer)
      Lê a aba default (primeira/única), entregando cada linha ao consumidor.
      Parameters:
      conteudo - bytes do arquivo
      rowConsumer - callback (indiceLinha0based, celulas)
    • readFirstRowOfSheet

      String[] readFirstRowOfSheet(byte[] conteudo, String nomeAba)
      Lê apenas a primeira linha de uma aba (detecção de tipo sem varredura completa).
      Parameters:
      conteudo - bytes do arquivo
      nomeAba - nome da aba
      Returns:
      células da primeira linha, ou null se a aba estiver vazia
    • listSheetNames

      List<String> listSheetNames(byte[] conteudo)
      Lista os nomes das abas do arquivo.
      Parameters:
      conteudo - bytes do arquivo
      Returns:
      nomes das abas na ordem do arquivo