Escritura en un fichero de texto
El siguiente código escribe un fichero de texto desde cero. Pone en él 10 líneas
import java.io.*;
public class EscribeFichero
{
public static void main(String[] args)
{
try
{
FileWriter fichero = new FileWriter("prueba.txt");
PrintWriter pw = new PrintWriter(fichero);
for (int i = 0; i < 10; i++)
pw.println("Linea " + i);
pw.close();
} catch (Exception e)
{
e.printStackTrace();
}
}
}
Si queremos añadir al final de un fichero ya existente, simplemente debemos poner un flag a true como segundo parámetro del constructor de FileWriter.
FileWriter fichero = new FileWriter("prueba.txt",true);
Read More
Leer un fichero
Para leer un fichero de texto en java línea a línea, podemos hacerlo así
import java.io.*;
class LeeFichero {
public static void main(String [] arg) {
File archivo = null;
FileReader fr = null;
try {
archivo = new File ("archivo.txt");
String linea;
fr = new FileReader (archivo);
BufferedReader br = new BufferedReader(fr);
while((linea=br.readLine())!=null)
System.out.println(linea);
}
catch(IOException e){
System.out.println(e);
}finally{
try{
if( fr != null){
fr.close();
}
}catch (IOException e){
System.out.println(e);
}
}
}
}
Ha que considerar que el bloque finally se ejecuta siempre, por eso, si se cierra el fichero al final del primer try, y ha dado un error antes, pasaría
al primer catch y luego saldría, dejándolo abierto. Es conveniente cerrarlo aquí, comprobando que no sea por un error anterior, como no tener permisos de lectura o que no exista – de valor null.
Comentarios recientes