Gostaria de saber se alguem ja fez algo parecido:
preciso capturar em uma string o texto separado por virgula, no caso
variavel = “texto1,texto2,texto3”, isso em netbeans.
Grato
Gostaria de saber se alguem ja fez algo parecido:
preciso capturar em uma string o texto separado por virgula, no caso
variavel = “texto1,texto2,texto3”, isso em netbeans.
Grato
Seria isto?
String texto = "texto1,texto2,texto3";
String dados[] = texto.split(",");
for(int x=0; x<dados.length; x++)
{
System.out.println(dados[x]);
}
Só usar StringTokenizer:
http://www.java-samples.com/showtutorial.php?tutorialid=236
StringTokenizer não deve ser usado, porque não trata corretamente campos vazios. Se você tentar usar StringTokenizer aqui, vai ver que ele vai pular direto de texto1 para texto3, o que nem sempre é desejável.
String texto = "texto1,,texto3";
String dados[] = texto.split(",");
for(int x=0; x<dados.length; x++)
{
System.out.println(dados[x]);
}
obrigado galera, funcionou perfeitmente.
Gostaria de pedir outra coisa.
Tenho uma JTable, mas nao queria criar no braço toda a vez que preciso atualizar registros ou inseir novos
no caso hoje, eu limpo as linhas, e recrio novamente com as atualizaçoes que teve na tabela do banco de dados.
Gostaria de saber se alguem fez algum tipo de dataset pra trabalhar com o jtable, que alimentasse conforme as atualizaçoes, sem ter que ficar recriando as linhas novamente, pois isso com uma quantidade de registros gigantes, fica inviavel.
Se alguem tiver alguma ideia de como fazer isso ou exemplo.
Grato
Use o Glazed Lists, http://publicobject.com/glazedlists
entanglement, esse site nao funciona, e pelo que eu procurei, so existe o demo dele? ou eu que nao achei o certo ainda
é um jar pra adicionar no projeto?
sabe me dizer onde posso encontrar já que o site nçao abre?
Grato
Desculpe, eu pus uma URL errada.
De fato, é um JAR que se adiciona ao seu projeto.
e vc tem por acaso tem a URL correta?
sendo um jar, já ajuda muito!
Não seria mais viável o uso de um TableModel feito por voce mesmo,
pois pelo que entendi voce está utilizando o DefaultTableModel, exato??
pois é, eu uso hoje DefaultTableModel para poder inserir rows e deletar tbm, é simples e funcional
mas fica inviavel por uma quantidade gigante de registros, eu pelo menos nao sei como proceder usando o DefaultTableModel para que ele consiga atualizar os registros sem ter que recriar novamente todas as linhas. Pouquissima experiencia e gigante necessidade :S
Se tiveres um exemplo…
Grato
class Cliente implements Comparable<Cliente> {
private String nome; private String endereco; private String telefone; private Long id;
public Cliente (String nome, String endereco, String telefone, Long id) {
this.nome = nome; this.endereco = endereco; this.telefone = telefone; this.id = id;
}
.... ponha aqui os setters e getters, a sua IDE pode gerá-los para você ....
}
Aí você cria a sua lista de clientes, a ser visualizada na tabela:
SortedList<Cliente> clientes = new SortedList<Cliente> (new BasicEventList<Cliente>());
Da sua lista de clientes, você cria o “modelo”:
EventTableModel<Cliente> clientesModel = new EventTableModel<Cliente> (clientes);
E então associa esse TableModel à sua JTable:
JTable tabelaClientes = new JTable (clientesModel);
Para permitir a ordenação clicando sobre a coluna, use:
TableComparatorChooser sorter = TableComparatorChooser.install(tabelaClientes, clientes, TableComparatorChooser.SINGLE_COLUMN);
Para adicionar um novo registro à JTable, simplesmente adicione um novo Cliente à lista de clientes:
clientes.add (new Cliente (......));
A modificação é feita sozinha.
Para modificar um registro que já está na JTable, você deve dar um set (porque senão a tabela não sabe que o registro foi modificado).
Digamos que o registro a ser alterado esteja na linha 10. Então:
Cliente cli = clientes.get(10);
cli.setNome ("Aparecida"); // alterei o nome do cliente
clientes.set (10, cli); // indico à tabela que o registro foi alterado
Para deletar um registro da JTable, basta deletá-lo da lista de clientes, com remove, tal como você faria em um ArrayList normal.
Para mais detalhes , consulte o PDF.