Anda di halaman 1dari 7

UNI VERSI DAD DI STRI TAL FRANCI SCO JOS DE CALDAS

I ngeni er a de Si st emas

Pr ogr amaci n Avanzada






MANEJOS DE ARCHI VO EN JAVA

Wal t er Fer ney Gut i r r ez Ospi na 20122020130
Lui s Dani el Cl avi j o Tobn 20122020696
Gr upo: 84
Bogot , Col ombi a
2014
2



Creaci n del Ficher
Si queremos crear un fichero con Java nos tenemos que apoyar en la clase File de
Java IO la cual nos proporciona un mtodo createNewFile que generar el fichero
en el path que le indiquemos.
Si bien debemos de tener en cuenta que el "directorio base" donde creemos el
fichero debe de existir. Por ejemplo, en el caso de que creemos un fichero indicando
el path "c:templineadecodigoficheroTexto", los directorios temporal y lineadecodigo
deben de existir.
As instanciaremos el objeto File de la siguiente forma:
File f = new File ("c:\temp\lineadecodigo\fichero.txt");
Una vez creado el fichero simplemente bastar invocar el mtodo createNewFile
teniendo cuidado de que puede ser lanzada la excepcin IOException a si que
debemos de capturarla.
try {
// A partir del objeto File creamos el fichero fsicamente
if (f.createNewFile())
System.out.println("El fichero se ha creado correctamente");
else
System.out.println("No ha podido ser creado el fichero");
} catch (IOException ioe) {
ioe.printStackTrace();
}
El mtodo devolver true si ha podido crear el fichero y false si no ha podido llevarlo
a cabo.
3



Ser necesario el uso de 4 clases especiales para poder escribir, la clase File,
FileWriter, BufferedWriter y PrintWriter, cada una hace lo siguiente:
1. File: esta clase es la escencia de crear un nuevo archivo, si un archivo con el
mismo nombre ya existe podramos sin querer escribir contenido sobre el mismo.
2. FileWriter: es un objeto que tiene como funcin escribir datos en un archivo.
3. BufferedWriter: objeto que reserva un espacio en memoria donde se guarda la
informacin antes de ser escrita en un archivo.
4. PrintWriter: Es el objeto que utilizamos para escribir directamente sobre el archivo
de texto.




























4



Lectura de un archiv de text en java
Podemos abrir un fichero de texto para leer usando la clase FileReader. Esta clase
tiene mtodos que nos permiten leer caracteres. Sin embargo, suele ser habitual
querer las lneas completas, bien porque nos interesa la lnea completa, bien para
poder analizarla luego y extraer campos de ella. FileReader no contiene mtodos que
nos permitan leer lneas completas, pero s BufferedReader. Afortunadamente,
podemos construir un BufferedReader a partir del FileReader de la siguiente forma:

File archivo = new File ("C:\\archivo.txt");
FileReader fr = new FileReader (archivo);
BufferedReader br = new BufferedReader(fr);
...
String linea = br.readLine();

La apertura del fichero y su posterior lectura pueden lanzar excepciones que
debemos capturar. Por ello, la apertura del fichero y la lectura debe meterse en un
bloque try-catch.

Adems, el fichero hay que cerrarlo cuando terminemos con l, tanto si todo ha ido
bien como si ha habido algn error en la lectura despus de haberlo abierto. Por ello,
se suele poner altry-catch un bloque finally y dentro de l, el close() del fichero.










5



import java.io.*;

class LeeFichero {
public static void main(String [] arg) {
File archivo = null;
FileReader fr = null;
BufferedReader br = null;

try {
// Apertura del fichero y creacion de BufferedReader para poder
// hacer una lectura comoda (disponer del metodo readLine()).
archivo = new File ("C:\\archivo.txt");
fr = new FileReader (archivo);
br = new BufferedReader(fr);

// Lectura del fichero
String linea;
while((linea=br.readLine())!=null)
System.out.println(linea);
}
catch(Exception e){
e.printStackTrace();
}finally{
// En el finally cerramos el fichero, para asegurarnos
// que se cierra tanto si todo va bien como si salta
// una excepcion.
try{
if( null != fr ){
fr.close();
}
}catch (Exception e2){
e2.printStackTrace();
}
}
}
}

Como opcin para leer un fichero de texto lnea por lnea, podra usarse la
clase Scanner en vez de el FileReader y el BufferedReader.


6



Escritura de un ficher de text en java
import java.io.*;

public class EscribeFichero
{
public static void main(String[] args)
{
FileWriter fichero = null;
PrintWriter pw = null;
try
{
fichero = new FileWriter("c:/prueba.txt");
pw = new PrintWriter(fichero);

for (int i = 0; i < 10; i++)
pw.println("Linea " + i);

} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// Nuevamente aprovechamos el finally para
// asegurarnos que se cierra el fichero.
if (null != fichero)
fichero.close();
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
}

Si queremos aadir al final de un fichero ya existente, simplemente debemos poner
un flag a true como segundo parmetro del constructor de FileWriter.
FileWriter fichero = new FileWriter("c:/prueba.txt",true);


7



Referencias
http://codigoprogramacion.com/cursos/java/130-manejo-de-archivos-en-java-escribir-
en-un-archivo-de-texto-txt.html#.U-5JE_l5N1Y
http://chuwiki.chuidiang.org/index.php?title=Lectura_y_Escritura_de_Ficheros_en_Ja
va
http://lineadecodigo.com/java/crear-un-fichero-en-java/

Anda mungkin juga menyukai