| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/02/2007 15:06:03
|
bzy
JavaGuru
![[Avatar]](/images/avatar/b984bddf9e7c8fb09854e208c0284764.jpg)
Membro desde: 23/08/2006 19:34:00
Mensagens: 215
Localização: São Paulo - Guarulhos
Offline
|
Bom, fiz um leitor de CSV, porque exportar separando por vírgula é fácil, difícil e ler e por tudo no lugar.
Tava mais é testando, usei até umas opções mais avançadas do JTable, todo o código ta bagunçado e com comentários toscos mas pode ser útil pra alguém.
O único problema que encontrei é que o Split do java, da problemas quando acha campos em branco, tipo ",, ", daí tive que colocar os campos em branco separados por hífen. Se alguém aperfeiçoar o "programinha", me avisa .
Obs. O arquivo que ele procura é o teste0.csv (o teste.csv é sem hífen) e o arquivo que ele cria é o dados_csv.txt.
| Nome do arquivo |
LeitorCsv.jar |
Download
|
| Descrição |
|
| Tamanho |
13 Kbytes
|
| Baixado: |
748 vez(es) |
| Nome do arquivo |
teste0.csv |
Download
|
| Descrição |
|
| Tamanho |
178 bytes
|
| Baixado: |
317 vez(es) |
|
SCJP - Sun Certified Java Programmer
http://meumundojava.blogspot.com/
Memento mori. |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/02/2007 15:29:29
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
O "split" pode separar seus campos direitinho, é questão de passar o parâmetro adequado.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/02/2007 15:43:12
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
A idéia é boa... e se for para levar o projeto pra frente coloca isto no GoogleCode ou algum outro host de projetos...
Agora segue algumas sugestõeszinhas
Ter a opção para abrir arquivos csv, e poder definir o caracter que separa os campos, pode ser virgula, ponto e virgula, tabs, etc...
Quanto ao problema do espaços ou dos campos em branco, lembre-se que o split é regular expression, portanto vc deve fazer o split("\\,"), ou o outro caracter definido, e depois do split se for um campo em branco, sera um null então tem q se fazer um IF no FOR do split para verificar os que são nulls, tipo:
Também era interessante suportar sequencia de caracteres, por exemplo poder usar "<:>"...
E também uma maneira de filtrar os resultados, imagina que quero apenas gravar os dados do csv que tem o e-mail terminado com @gmail.com...
E se parar pra pensar mais dá para fazer mil e uma coisas, mas acho que o pessoal ainda cai no vicio de usar o Excel ou o OpenOffice pra trabalhar os csvs e fazer filtragens...
Mas se tiver recursos a mais tanto para gravar como para ler, e suportar XMLs e talz...
Agora é ter criatividade e para pra pensar um pouco e inventar...
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/02/2007 15:44:20
|
bzy
JavaGuru
![[Avatar]](/images/avatar/b984bddf9e7c8fb09854e208c0284764.jpg)
Membro desde: 23/08/2006 19:34:00
Mensagens: 215
Localização: São Paulo - Guarulhos
Offline
|
Que show. Sabia que aquele segundo parâmertro servia para alguma coisa ! Valeu!
|
SCJP - Sun Certified Java Programmer
http://meumundojava.blogspot.com/
Memento mori. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/02/2007 15:55:54
|
bzy
JavaGuru
![[Avatar]](/images/avatar/b984bddf9e7c8fb09854e208c0284764.jpg)
Membro desde: 23/08/2006 19:34:00
Mensagens: 215
Localização: São Paulo - Guarulhos
Offline
|
Ho Du! É que esse projeto é parte de outro maior. Depois te mando, mas já que falou, tive problemas para pegar dados do CSV do Gmail, ele aparece com caracteres estranhos, se alguém puder testar ai.
Obs. O problema do Split ta corrigido, valeu thingol.
Agora o arquivo que ele lê é o "texte.csv"
Para imprimir (criar o arquivos txt) va no menu Imprime / Imprime... Valeu!
| Nome do arquivo |
LeitorCsv.jar |
Download
|
| Descrição |
|
| Tamanho |
13 Kbytes
|
| Baixado: |
267 vez(es) |
|
SCJP - Sun Certified Java Programmer
http://meumundojava.blogspot.com/
Memento mori. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/02/2007 11:42:03
|
ksi
JavaBaby
![[Avatar]](/images/avatar/03e03424a898e574153a10db9a4db79a.jpg)
Membro desde: 03/10/2006 16:12:58
Mensagens: 96
Localização: São Paulo
Offline
|
bzy,
Dei uma olhada no seu projeto, tá legal viu...
Creio que o problema daqueles caracteres seja a codificação em questão, abri o csv do gmail no bloco de notas e salvei com codificação ANSI e ele deu um sinal de vida rs...
Pesquise sobre charsets, talvez seja o problema.
Desculpe não poder ajudar muito pois ainda nao tenho experiência com charset.
|
Rafael de Carvalho
............... ...............
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/02/2007 12:34:25
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
Exatamente, se tem problemas com os caracteres é isto q o ksi disse, tem q setar o charset quando faz o InputStream...
Alguns charsets:
UTF-8 - UTF-16LE - UTF-16 - UTF-16BE - US-ASCII
Então na hora de abrir o arquivo ou então fazer um frame de configurações gerais, poder dizer o charset q deve ser usado, o charset do Input e o do Output... para poder por charsets diferentes...
Exemplo do uso de charset:
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/02/2007 12:28:17
|
bzy
JavaGuru
![[Avatar]](/images/avatar/b984bddf9e7c8fb09854e208c0284764.jpg)
Membro desde: 23/08/2006 19:34:00
Mensagens: 215
Localização: São Paulo - Guarulhos
Offline
|
Obrigado de novo. Irei corrigir o problema e posto aqui e quem sabe num futuro próximo eu não de uma aperfeiçoada nele para o pessoal não ter mais que usar o Excel !
Obs. Gostei do seu gif ksi
|
SCJP - Sun Certified Java Programmer
http://meumundojava.blogspot.com/
Memento mori. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/02/2007 02:33:58
|
ksi
JavaBaby
![[Avatar]](/images/avatar/03e03424a898e574153a10db9a4db79a.jpg)
Membro desde: 03/10/2006 16:12:58
Mensagens: 96
Localização: São Paulo
Offline
|
Eduveks
Eu até tentei fazer alguma coisa do tipo após pesquisar na internet sobre mudança de charset, acho que fiz algo do tipo na hora de salvar a String:
Mas não obtive bons resultados.
bzy
Assim que tiver uma versão mais aprimorada poste aí, pelo menos eu vou querer!
Sobre o gif fique a vontade se quiser colocar na sua assinatura tbm.
Até.
|
Rafael de Carvalho
............... ...............
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/02/2007 12:31:38
|
bzy
JavaGuru
![[Avatar]](/images/avatar/b984bddf9e7c8fb09854e208c0284764.jpg)
Membro desde: 23/08/2006 19:34:00
Mensagens: 215
Localização: São Paulo - Guarulhos
Offline
|
Que bom que alguém se interessou! Eu corrigi uma parte, mas terei que reformular o programa se for colocar o Filechooser e permitir alterar o nome do arquivo que vai ser salvo. Fora corrigir alguns Bugs, então vai demorar um pouco masi do que eu pensava, mas vou colocar a última versão, só vai funcionar se escolher um arquivo logo que abrir a aplicação.
Testando mais a fundo percebi que embora tenha arruma o charset para ele lêr o CSV do Gmail, os outros ele não lê... Então, preciso ver isso também.
Lembrando que o código fonta está junto com o JAR.
| Nome do arquivo |
LeitorCsv.jar |
Download
|
| Descrição |
Só funciona com codificação UTF-16... |
| Tamanho |
15 Kbytes
|
| Baixado: |
335 vez(es) |
|
SCJP - Sun Certified Java Programmer
http://meumundojava.blogspot.com/
Memento mori. |
|
|
 |
|
|