Olá pessoal…tô precisando da ajuda de vcs…
É o seguinte :
Gostaria de saber como escrever strings em arquivos texto. Li o livro de Deithel mas o exemplo que ele deu só permite que se grave objetos e com registros de tamanho fixo. Pra recuperar informações gravadas dessa maneira é necessário criar outro programa apenas para ler os dados em um formato que o usuário possa aceitar.
Queria algo paracido com o C :
Vc abre um arquivo e escreve o que vc quer em um formato qualquer. Depois vc apenas abre o arquivo(texto) e utiliza as informações. Dessa maneira dá até pra gerar código em uma determinada linguagem.
O que eu tô querendo fazer é escrever dados obtidos do meu programa em um arquivo texto no formato da linguagem do matlab pra depois abrir esse mesmo arquivo, copiar e colar no prompt do mat esses dados e depois plotar gráficos.
Será que tem um jeito ???
se der mande mini códigos…valeu pessoal e não precisam economizar nas respostas…
Salve nnewtonn!!!
Cara há forma sim de fazer isto acho que é StringBufferRead o método para fazer leitura desse tipo, amanhã darei a você uma resposta concreta porque não estou em casa e de cabeça eu não sei!!!
Beleza??? :oops:
eu sei algumas maneiras de gravação ve se elas servem!!!
precisa-se de
import java.io.*;
O arquivo que só grava uma vez
{
try{
PrintWriter p=new PrintWriter(new FileWriter(?C:/aula.txt?));
p.print(?Exemplo de gravação de texto?);
p.close();
}
catch(Exception e)
{}
}
O arquivo seqüencial, onde os dados são adicionados sequencialmente ao arquivo já existente sem perder os dados (gravação adicional)
Ex
try{
RamdomAcessFile r = new RamdomAcessFile(?C:/aula2.txt? ,?rw?); //leitura/escrita
r.seek ( r.length() ); // posicionamento?.posiciona o cursor depois da ultima posicao da string no arquivo
r.writeBytes( t1.getText() ); // gravar dados no arquivo
r.close();
}
catch(Exception e)
{}
Leitura de arquivos
try
{
FileReader f=new FileReader(“c:/aula.txt”);
BufferedReader in=new BufferedReader(f);
String s;
while((s=in.readLine())!=null)
{
System.out.println(s);
}}
catch(Exception e)
{}}
valeu cara ve se serve ae!!!espero ter ajudado!!
são esses tipos de modos de salvar que eu conheço. Se alguem saber algum outro geito por favor me falem ok?
:dj: :drum
Valeu pessoal…vou testar as dicas recebidas até agora…
mas gostaria se possível que mais pessoas tentasse responder a essa questão…pois podemos descobrir maneiras diferentes de fazer isso…valeu ???
“A Verdade que não Liberta não é Verdade” - Yeshua
[quote=“shadow”]eu sei algumas maneiras de gravação ve se elas servem!!!
precisa-se de
import java.io.*;
O arquivo que só grava uma vez
{
try{
PrintWriter p=new PrintWriter(new FileWriter(?C:/aula.txt?));
p.print(?Exemplo de gravação de texto?);
p.close();
}
catch(Exception e)
{}
}
O arquivo seqüencial, onde os dados são adicionados sequencialmente ao arquivo já existente sem perder os dados (gravação adicional)
Ex
try{
RamdomAcessFile r = new RamdomAcessFile(?C:/aula2.txt? ,?rw?); //leitura/escrita
r.seek ( r.length() ); // posicionamento?.posiciona o cursor depois da ultima posicao da string no arquivo
r.writeBytes( t1.getText() ); // gravar dados no arquivo
r.close();
}
catch(Exception e)
{}
Leitura de arquivos
try
{
FileReader f=new FileReader(“c:/aula.txt”);
BufferedReader in=new BufferedReader(f);
String s;
while((s=in.readLine())!=null)
{
System.out.println(s);
}}
catch(Exception e)
{}}
valeu cara ve se serve ae!!!espero ter ajudado!!
são esses tipos de modos de salvar que eu conheço. Se alguem saber algum outro geito por favor me falem ok?
:dj: :drum[/quote]
Salve shadow…
o teu 1º exemplo funcionou…mas vc sabe como formatar a saida no arquivo ???
por exemplo, nova linha do C “\n” ou a tabulação “\t”…o retrocesso ???
java permite isso ???
espero sua resposta e obrigado desde já.
“Não se irrite por não conseguir fazer as pessoas serem como vc quer já que vc mesmo não é como gostaria de ser” - Thomás de Kempis
Salve
Cara tenho esse código aí, nunca me deu problema veja só:
String nomArq = seuArquivo.txt;
// lê arquivo
File arquivo = new File ( nomArq );
if ( arquivo.exists() )
{
BufferedReader ler = new BufferedReader( new FileReader( nomArq ));
String linha;
while ( ( linha = ler.readLine() ) != null)
{
aqui você vai fazer o que você precisar!!!!
}
ler.close();
}
acho que resolve seu problema!!!
Até mais!
sim o \n e o \t funcionam na saida de dados!!
faça um teste e veja use:
System.out.printf("\n\t testando…");
System.out.printf("\n\t testando…");
e irá imprimir no DOS…
qualquer duvida mande um email flw… :lolgoku: :dj:
[quote=“shadow”]sim o \n e o \t funcionam na saida de dados!!
faça um teste e veja use:
System.out.printf("\n\t testando…");
System.out.printf("\n\t testando…");
e irá imprimir no DOS…
qualquer duvida mande um email flw… :lolgoku: :dj:[/quote]
nunca testei assim não … mas o que eu sei que funciona e é mais elegante (ehhe) é : System.getProperty(“line.separator”);
vc pode me dar um exemplo pra que eu possa ver como que fica? :lol:
System.out.println(“Ola”+System.getProperty(“line.separator”)+“meu nome é :”+System.getProperty(“line.separator”));
ok ???
System.out.println(“Ola”+System.getProperty(“line.separator”)+“meu nome é :”+System.getProperty(“line.separator”));
ok ???[/quote]
Olá Brossi…tudo bein???
diz aí : qual é a principal propriedade do getProperty ???
quais são os seus principais argumentos ???
pode ser utilizado com outras classes de manipulação de arquivos ???
em que circustâncias ele é mais utilizado ???
Espero suas respostas.
Valeu cara…
Aproveitando o topico, sera que funcionaria se eu colocasse uma URL no lugar do nome do arquivo ? E que no meu caso, preciso de uma referencia a um arquivo da net.
não, vc não pode criar um objeto da classe File com a classe URL
mas vc pode usar a classe InputStreamReader para ler dados do arquivo
URL url = new URL(local);
InputStreamReader entrada = new InputStreamReader(URL.openStream());
eu vi isso na API agora mas nunca testei…
mas acho que da certo sim