Ler dados direto de um arquivo texto com ireport

3 respostas
Paulo_Faulstich

Olá pessoal, estou implementando um funcionalidade em um projeto na qual eu preciso ler os dados direto de um arquivo texto e gerar um relatório no ireport.

Estou usando o iReport 3.5.2.

Já utilizei ele anteriormente em outros projetos, mas sempre a minha fonte de dados era um “banco de dados” até ai tranquilo, mas agora preciso ler um arquivo texto que tem delimitadores, por exemplo:

paulo ; roberto

paulo = field 1
roberto = field 2

Sei que existe a opção de utilizar como fonte de dados arquivos com extensão “.cvs” o problema é que que gera esse arquivo texto é o cliente e ele já faz isso a muito tempo, acho que ele vai ser meio resistente se eu pedir pra ele gerar um “.csv”

Bom enfim … alguem já utilizou o iReport buscando como fonte de dados um arquivo “.txt”

Abraços.

3 Respostas

L

Ola Paulo, vc pode usar a classe JRCsvDataSource, ela é para arquivos csv, porem ela aceita qualquer arquivo, após sua criação vc poderá mudar o token delimitador, setando o metódo setFieldDelimiter(char fieldDelimiter).

Para maiores detalhes consulte a documentação, mas com esta vc consiguirá fazer o que deseja.
http://jasperreports.sourceforge.net/api/net/sf/jasperreports/engine/data/JRCsvDataSource.html

Ou se preferir pode criar seu proprio DataSource basta que sua classe implemente a classe JRDataSource.

valew…

Paulo_Faulstich

Entendi,

Mas como no meu iReport por exemplo eu mapeio as colunas?

Obrigado

Paulo_Faulstich

Resolvido pessoal,

O iReport já da suporte por default.

Quanto ao mapeamento ele faz pela ordem das colunas.

Obrigado.

Abraços.

Criado 14 de julho de 2009
Ultima resposta 14 de jul. de 2009
Respostas 3
Participantes 2