Help com .split() ??  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
rbroz85
JavaEvangelist
[Avatar]

Membro desde: 13/02/2007 16:25:29
Mensagens: 371
Localização: Rio de Janeiro
Offline

bom dia....

estocom problemas em usar o split ?

tenho o seguinte cvs:

1;2;3;;;
3;2;5;2;4;2;6

e sanvando em uma String[]....

o lenth do primeiro da 3... e do segundo le 7 !!!!

como faço pra ele ler os ;; (vazios) ???

abs

"Alles was Sie wollen ist nicht alles was Sie brauchen"
"Die Dümmsten Bauern haben die dicksten kartoffeln"
-skype: rafaelbroz
-msn: rbroz85@hotmail.com
[MSN] [ICQ]
ronybrand
Thread.start()

Membro desde: 28/05/2003 15:54:00
Mensagens: 29
Offline

.split(";", 7);

Assim ele fixa que o array de String terá tamanho 7

Rony Brand
SCJP
windsofhell
GUJ Master

Membro desde: 15/06/2007 08:31:17
Mensagens: 1687
Localização: Stockholm - Sweden
Offline



Se vc colocar um valor negativo no segundo parametro do split vai pegar todos os brancos ate o fim.

This message was edited 1 time. Last update was at 06/12/2007 10:46:09


Nao respondo MP!!!

Site: http://downhillracer.wordpress.com
spycall
JavaTeenager
[Avatar]

Membro desde: 26/04/2005 14:29:59
Mensagens: 189
Localização: São paulo
Offline

Ou então use o

No mundo existem 10 tipos de pessoas, as que conhecem e as que não conhecem binário.
[MSN]
windsofhell
GUJ Master

Membro desde: 15/06/2007 08:31:17
Mensagens: 1687
Localização: Stockholm - Sweden
Offline

ronybrand wrote:.split(";", 7);

Assim ele fixa que o array de String terá tamanho 7



hummm, eu acho que seria desnecessario fazer desse jeito porque vc ta limitando o split de aplicar a RE somente ate encontrar 7, tem situacoes que vc pode precisar fazer isso, mas eu acho que nao eh o que o rbroz85 quer.

Por exemplo, se eu tiver o array :

String str1 = "1;2;3;;2;;;;;2";

E usar :

String[] a1 = str1.split(";",7);;

Quando eu listar todos os elementos do array eu vou ter :

a1 -> 1
a1 -> 2
a1 -> 3
a1 ->
a1 -> 2
a1 ->
a1 -> ;;;2

Por isso usar o -3 no segundo argumento faz com o o split aplique a RE ate o final sem ignorar os brancos.

This message was edited 2 times. Last update was at 06/12/2007 11:23:57


Nao respondo MP!!!

Site: http://downhillracer.wordpress.com
rbroz85
JavaEvangelist
[Avatar]

Membro desde: 13/02/2007 16:25:29
Mensagens: 371
Localização: Rio de Janeiro
Offline

nao galera...

eu nem posso delimitar o tamanho....
por exemplo seeu tenho uma linha assim:

1;4;;;;;;;;;;7

ele cria um string[12] blz !

mas se e utiver assim:

1;4;;;;;;;;;;

ele cria um string[2];

ou seja quando o ultimo esta fazio... ele desconcidera e diminue o tamanho do vetor....

entao, no java eu nao concegui resolver isso... entao eu fui la no excel.. e adcionei mais uma coluna no final com um caracter qualquer assim:

1;4;;;;;;;;;;#

ou seja pra forçar ele ter 12 posições.


vai funcionar se eu fizer split (";",12) , como o ronybrand mencionou ?]

ele vai conciderar no meu vetor os campos nulos ?


abs

obrigado

"Alles was Sie wollen ist nicht alles was Sie brauchen"
"Die Dümmsten Bauern haben die dicksten kartoffeln"
-skype: rafaelbroz
-msn: rbroz85@hotmail.com
[MSN] [ICQ]
windsofhell
GUJ Master

Membro desde: 15/06/2007 08:31:17
Mensagens: 1687
Localização: Stockholm - Sweden
Offline

Meu, coloca o segundo argumento do split um numero negativo!!!

compila o exemplo que eu coloquei ai



A saida vai ser : TAMANHO : 12 e nao 2

Se vc fazer um loop nesse array vc vai ver que ele nao ignorou os espacos em branco.

This message was edited 2 times. Last update was at 07/12/2007 08:55:12


Nao respondo MP!!!

Site: http://downhillracer.wordpress.com
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team