Como escribir ficheros txt

Elisa
13 de Enero del 2006
Hola quiero hacer un fichero txt y tengo un FileOutputStream y un PrintWriter. Escribo con print y luego hago un close pero no me escribe nada en el fichero ¿que hago?

Diego
13 de Enero del 2006
haz un flush() antes de cerrar el archivo. Espero que te sirva.

neossoftware
13 de Enero del 2006
Hola por ahi tenia una aplicacion que usa lo que necesitas, solo no le hagas caso a los ifs ni nada de eso, por que ya es parte de la logica de mi programa solo a la utilización de FileOutputStream sale????

----------------------------------------------------------------

BufferedReader entrada=null;

String aux="";
int cont=1;
boolean anterior_contenido=false;
Map map=new HashMap();

entrada=new BufferedReader(new FileReader("d:/hugo/14257.txt"));
FileOutputStream out = new FileOutputStream("d:/hugo/salida.txt");

//Obtiene los datos del archivo

while ((aux=entrada.readLine())!=null) {

aux=aux.trim();
System.out.println(anterior_contenido);
System.out.println(aux);

if((!anterior_contenido)&&(aux.compareToIgnoreCase("")!=0)) { //la linea anterior no tiene contenido

map.put(("" +cont +""),aux);
cont++;

}

else if((aux.compareToIgnoreCase("")==0)) {

map.put(("" +cont +"")," ");
cont++;

} else {

String anterior= (String)map.get((""+ (cont-1) +""));
map.put((""+ (cont-1) +""), anterior + " " + aux);

}

if(aux.compareToIgnoreCase("")!=0)
anterior_contenido=true;

else
anterior_contenido=false;

}

for (int i=1;i<cont;i++) {
System.out.println(map.get(""+ i + ""));
out.write(((String)map.get(""+ i + "")).getBytes());
out.write('r');
out.write('n');
}

}