Este problema ocorre porque o "\n" � o separador de linha do formato de
arquivos texto do UNIX. No DOS, o separador usado � "\r\n" (carrier
return/new line). Voc� provavelmente est� abrindo o arquivo no notepad do
windows, que n�o reconhece o formato. O wordpad (e qualquer outro editor
decente) o reconhece, e separa corretamente as linhas.
Obs.: do mesmo jeito que o notepd n�o quebra as linhas quando encontra
apenas o "\n", um editor de texto no UNIX lendo um arquivo texto do DOS
quebra as linhas, mas um caracter ileg�vel aparece no final de cada linha (o
"\r").
Como escrever sempre no formato do computador local? Isso eu n�o sei, talvez
exista alguma classe que d� o separador (do mesmo jeito que a classe
java.io.File.separatorChar nos d� o separador de arquivos "/"' no UNIX e "\"
no Windows), mas eu n�o consegui achar, se algu�m a� souber, avise :)
----- Original Message -----
From: Willian Bolzan
To: JavaList
Sent: Thursday, April 20, 2000 12:19 AM
Subject: [SouJava-J] Caractere de escape "\n"
Saudacoes!!
O seguinte trecho de codigo gera numeros aleatorios e grava em um
arquivo.txt.
/*************/
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Random;
import java.math.*;
class Gravar
{
public static void main (String[] args)
{
if (args.length != 1)
{
System.exit(-1);
}
try
{
FileOutputStream out = new FileOutputStream (args[0]);
for(int i=0; i<300; i++)
{
int a= (int) (1.+(Math.random()*300.));
String str = a+"\n";
byte[] buf = new byte[str.length()];
str.getBytes(0, str.length(), buf, 0);
out.write(buf);
}
out.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
Mas eu preciso que ele grave os numeros um em cada linha.Um abaixo do outro.
O que esta acontecendo � que os numeros estao todos na mesma linha separados
por um caracter, (um quadrado preenchido) o qual nao posso mostrar porque
aqui neste editor de e-mail ele representa avanco de linha, como deveria
acontecer com o arquivo.txt. O caracter "\n"nao esta dando certo.
10?158?132?478?188?369?........ ? --> representa o quadrado preenchido.
Nao sei se fui claro.
O que eu posso fazer??
Obrigado,
Willian Bolzan.
--------------------------- LISTA SOUJAVA ---------------------------
http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
[d�vidas mais comuns: http://www.soujava.org.br/faq.htm]
[para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
[regras da lista: http://www.soujava.org.br/regras.htm]
---------------------------------------------------------------------