Eu to voltando a programar em Java depois de um bom tempo parado, e por isso eu estou com muitas duvidas. E pra piorar, tenho que fazer um analisador léxico…resumindo… 8O
Eu já tenho idéia da estrutura que eu vo usa pra fazer o analisador, so me falta relembrar o Java e alguns de seus comandos.
O que eu quero saber é:
1° como que eu leio um arquivo .txt?
2° como que eu leio char por char de um arquivo .txt?
acho que inicialmente so isso já me ajuda. Assim que eu sair do zero eu vo postando o código aqui.
Amigos do Portal tenho um problema em minhas mãos … tenho que gerar um txt para que o dataflex possa ler as informações contida no mesmo vcs sabem como posso fazer essa proeza
R
rcmsjPJ
O que eu quero saber é:
1° como que eu leio um arquivo .txt?
2° como que eu leio char por char de um arquivo .txt?
... um exemplo aí ...
importjava.io.*;publicclassExArquivo{publicstaticvoidmain(String[]args){Filef=newFile("C:/dados.txt");try{FileReaderfr=newFileReader(f);intletra=0;letra=fr.read();while(letra!=-1){charletraChar=(char)letra;System.out.println(letraChar);letra=fr.read();}}catch(FileNotFoundExceptionfe){System.out.println("Arquivo nao encontrado");}catch(IOExceptionie){System.out.println("Falha na leitura");}}}
D
dumesticoPJ
importjava.io.*;publicclassExArquivo{publicstaticvoidmain(String[]args){Filef=newFile("C:/dados.txt");try{FileReaderfr=newFileReader(f);intletra=0;letra=fr.read();while(letra!=-1){charletraChar=(char)letra;System.out.println(letraChar);letra=fr.read();}}catch(FileNotFoundExceptionfe){System.out.println("Arquivo nao encontrado");}catch(IOExceptionie){System.out.println("Falha na leitura");}}}
Filef=newFile("C:/dados.txt");
esta linha de codigo esta mostrando aonde seu arquivo "dados.txt" deve estar salvo.
Aqui ele gera uma Exception caso ele nao consiga achar o arquivo, normalmente quando o nome esta diferente ou nao existe.
catch(IOException ie){
System.out.println("Falha na leitura");
}
Esse gera uma Exception caso aconteça algum erro na leitura do conteúdo
blz?!
Vlw!!
R
raseckefaPJ
putz cara, valew mesmo! mas eu tenho algumas duvidas.
não saquei a utilidade desse comando? char letraChar = (char)letra;
e nem por que a estrutura “while” vai ate -1.
otra coisa tambem, quando eu leio char por char eu tambem leio \n \r e coisas do tipo né?
R
rcmsjPJ
casting … pois letra é int
qdo retornar -1, é por que chegou no fim do stream
R
raseckefaPJ
como que eu crio um arquivo e escrevo nele?
R
RomulinhoPJ
Ao invés de tu usar objeto “FileReader” tu usa “FileWriter” e o método write() dele. As outras estruturas são parecidas.
R
raseckefaPJ
eu procurei na net e fiz algo que não funcino!
FileWriter saida = new FileWriter(new File(“C:\temp.txt”),true); saida.println(“Camera’s ready,”);
o que que estaria errado nesse meu codigo?
R
RomulinhoPJ
importjava.io.File;importjava.io.FileWriter;importjava.io.IOException;publicclassArquivos{publicArquivos(){escreveArquivo("d:\arquivo.txt","Texto que vai ser escrito!!!");}privatevoidescreveArquivo(StringnomeArquivo,Stringtexto){Filefile=newFile(nomeArquivo);try{FileWriterwriter=newFileWriter(file);writer.write(texto);writer.close();}catch(IOExceptione){e.printStackTrace();}}publicstaticvoidmain(String[]args){newArquivos();}}
como eu estou pegando char por char do arquivo texto, em alguns momentos eu estou tentando saber se o char esta vazio. mas o meu programa não esta funcionando.
so que no “if” esta ocorrendo um erro. alguem sabe me dizer o que pode ser?
R
RomulinhoPJ
Cara, é porque tu tá usando aspas duplas. Tu tem que usar aspas simples. Duplas é pra String, simples pra char
R
raseckefaPJ
¬¬
R
raseckefaPJ
Olha so galera, como eu estou voltando a programar em java, eu estou com alguns problemas.
Eu estou querendo usar uma function que me retorne true ou false , so que eu não estou sabendo implementar isso.
Eu estou lendo um arquivo texto char por char, e a cada char, eu quero chamar uma função para fazer os devidos testes nesse char, mas eu não sei como fazer iss. Será que alguém pode me passar um exemplo simples de um programa que lê um char do arquivo texto, e chama uma função para verificar se ele é letra ou numero?
eu to usando uma área de texto no meu program, como que eu mudo a cor de uma palavra?
R
raseckefaPJ
Há algum comando para eu esvaziar o meu vetor?
otra coisa tambem, eu queria colocar os char em uma string, eu estou usando
token += letraChar;
mas não esta funcionando!
alguem sabe por que?
D
dumesticoPJ
Porque você não usa um vetor passando a todos os elementos do seu vetor o valor vazio "" ?!
Assim por exemplo:
publicclassVetor{publicstaticvoidmain(String[]args){Stringvetor[]=newString[10];for(inti=0;i<10;i++){vetor[i]="";System.out.println("O valor do vetor é: "+vetor[i]);}}}
R
rcmsjPJ
só usar o clear()
R
RomulinhoPJ
Cara, tu tem a API do Java? Se não tiver, seria bom tu pegá-la. Dá pra tirar muita dessas tuas dúvidas apenas a consultando.
R
raseckefaPJ
eu estava querendo saber como que eu escrevo uma palavra de cor diferente em uma área de texto.
ex:
exemplo de [color=“red”]cor[/color] em uma área de texto.
se alguém puder me ajudar.!
quanto a API, eu não tenho não, mas vo da uma procurada, o meu problema no momento é que estou com o tempo curto pra terminar esse trabalho. :sad: