Existe algum método que identifique um espaço em branco, um TAB ou um ENTER de um arquivo texto (.txt)?
Um Forte Abraço
:idea: Sheyla_DF :idea:
Existe algum método que identifique um espaço em branco, um TAB ou um ENTER de um arquivo texto (.txt)?
Um Forte Abraço
:idea: Sheyla_DF :idea:
oie blzinha???
tem sim
StringTokenizer
padrão de identificação e separação de tokens é um espaço em branco
confere na documentação
:arrow: http://java.sun.com/j2se/1.4.2/docs/api/index.html
ps.: se vc tem o livro java como programar 4ed da Deitel tem um capitulo soh de manipulação de Strings e tem como utilizar o StringTokenizer
ps2.: vc vai ler o arquivo.txt e carregar em uma string para poder manipular ele
[]'s
Erko Bridee
Muito obrigada, vou procurar ler este capítulo, se aparecer mais dúvidas volto a perguntar.
:razz: Com Carinho :lol:
Sheyla_DF
[quote=“Sheyla_DF”] Existe algum método que identifique um espaço em branco, um TAB ou um ENTER de um arquivo texto (.txt)?
Um Forte Abraço
:idea: Sheyla_DF :idea:[/quote]
String.indexOf(" ")
String.indexOf(’\t’)
String.indexOf(’\n’)
String.indexOf(’\r’)
[quote=“mavi”][quote=“Sheyla_DF”] Existe algum método que identifique um espaço em branco, um TAB ou um ENTER de um arquivo texto (.txt)?
Um Forte Abraço
:idea: Sheyla_DF :idea:[/quote]
String.indexOf(" ")
String.indexOf(’\t’)
String.indexOf(’\n’)
String.indexOf(’\r’)[/quote]
mais pratico mavi ! hehe boa
:fucando: StringTokenizer separador = new StringTokenizer(teste.getConteudo(), “;\t\n\r”);
Eu criei o objeto (separador) da classe StringTokenizer, preciso verificar se o conteúdo dele é igual a ";". Tentei:
if (separador == “;”), dá erro na hora de compilar.
if (separador.equals(";")), compila, mas não funciona.
Alguém tem a solução
Um Forte Abraço - Sheyla_DF :roll:
opa…
o objeto separador é da classe StringTokenizer e não da classe String
qndo vc usa o separador.equals(";"); na verdade vc esta comparando com um objeto “;”… e se vc faz == “;” vc esta comparando com uma string, não dah certo, seria o mesmo que comparar um bola com um copo de agua…
faça o seguinte, separe a string em pedaços( ou tokens) com a classe StringTokenizer
por exemplo,
String pedaco separador.nextToken();
ai vc faz as comparações com o objeto pedaco
entendeu?
:???: Não sei o que está acontecendo com o meu programa. Ele compila, mas não roda direito, aparece um erro dentro do WHILE, a mesma instrução fora do comando de repetição funciona normalmente:
n1[x] = separador.nextToken();
Alguém sabe o que está acontecendo, preciso colocar alguma Excepção, como devo fazer?
totalLin.addActionListener( new ActionListener()
{
public void actionPerformed (ActionEvent e)
{
StringTokenizer separador = new StringTokenizer(teste.getConteudo());
StringTokenizer pv = new StringTokenizer(teste.getConteudo(), ";");
int linha= pv.countTokens();
System.out.println("total de linhas: "+(linha-1));
int i = separador.countTokens(), x=0;
System.out.println("N: "+i);
String[] n1 = new String[300];
n1[x] = separador.nextToken();
System.out.println(n1[x]);
boolean bol = separador.hasMoreTokens();
while (bol)
{
n1[x] = separador.nextToken();
System.out.println(n1[x]);
x++;
}
tfResultado.setText(String.valueOf(linha));
}
});
Um Forte Abraço - Sheyla_DF :roll:
Vc passou um método actionPerformed como parêmetro pro addActionListener!!! Num cunheço essa forma…
poderia ser assim:
[code]totalLin.addActionListener(this);
totalLin.setActionCommand(“exemplo”);
public void actionPerformed(ActionEvent e)
{
String Selecao = e.getActionCommand();
if (Selecao.equals(“exemplo”))
{
StringTokenizer separador = new StringTokenizer(teste.getConteudo());
StringTokenizer pv = new StringTokenizer(teste.getConteudo(), “;”);
int linha= pv.countTokens();
System.out.println("total de linhas: "+(linha-1));
int i = separador.countTokens(), x=0;
System.out.println("N: "+i);
String[] n1 = new String[300];
n1[x] = separador.nextToken();
System.out.println(n1[x]);
boolean bol = separador.hasMoreTokens();
while (bol)
{
n1[x] = separador.nextToken();
System.out.println(n1[x]);
x++;
}
tfResultado.setText(String.valueOf(linha));
}
}
[/code]
Num sei como tá seu programa, mas acho que talvez assim possa funcionar.
use o String.split()
String[] pedacos = teste.getConteudo().split(";");
for(int i = 0; i < pedacos.length; i++) {
System.out.println("linha sem ; = "+pedacos[i]);
}
evite usar o StringTokenizer, de acordo com a documentação seu uso será deprecado, mas se quiser usar use do seguinte modo:
StringTokenizer stok = new StringTokenizer(teste.getConteudo(),";");
while(stok.hasMoreTokens()) {
System.out.println("linha sem ; = "+stok.nextToken());
}
bjinho Sheyla!! :razz:
Henrique Viecili
Felipe e Henrique, muito abrigada pelas dicas, vou fazer alguns teste e se surgir mais dúvidas espero poder contar com a ajuda de vocês…
Com Carinho - Sheyla_DF :picando: