• Skip to content
  • Skip to primary sidebar

Daniel López

Desarrollador de aplicaciones multiplataforma y SEO

Utilización de ficheros en Java

24 octubre, 2013 by admin Leave a Comment

Prácticas de ficheros en Java

En las prácticas realizadas de ficheros en Java se han utilizado clases y métodos relacionados con estos, como por ejemplo, la clase File y métodos como getName() y otros métodos para realizar comprobaciones con ficheros como exists() o canRead().

El objetivo principal de estas dos prácticas era poner en práctica estas clases y métodos de los ficheros en Java, para ello se pedía por ejemplo crear ficheros en determinados directorios, rellenar ficheros creados con contenido y mostrar el contenido de los ficheros creados anteriormente.

En la primera práctica se pedía generalmente crear ficheros, rellenarlos y mostrarlos, además en algún caso introducir argumentos de entrada para crear ficheros a partir de estos.

La segunda práctica profundizaba más en los ficheros en Java y los ArrayList en conjunto con estos utilizando ArrayList para almacenar contenido de los archivos. Además, en esta práctica utilizamos más métodos relacionados con ficheros y directorios en Java, para comprobar si es un directorio o crear ficheros mediante el método createNewFile().

Por último, en esta práctica también hemos realizado clases en las que conseguimos trasladar la información de un fichero a otro y, además, debíamos sobrescribir alguna línea del contenido del fichero o incluso eliminarla.

Clases para trabajar con ficheros en Java

Para trabajar con ficheros se utilizan principalmente 5 clases:

Clase File: esta clase se encarga de cargar el fichero con el que vamos a trabajar

File fichero = new File("fichero.txt");

http://docs.oracle.com/javase/6/docs/api/java/io/File.html

Clase FileWriter: esta clase crea el flujo de escritura del fichero, a partir de esta clase se escribe texto en el fichero.

FileWriter fw = new FileWriter(fichero);

http://docs.oracle.com/javase/6/docs/api/java/io/FileWriter.html

Clase PrintWriter: esta clase permite convertir a texto variables y objetos para escribirlos en un Writer.

PrintWriter pw = new PrintWriter(fw);

http://docs.oracle.com/javase/6/docs/api/java/io/PrintWriter.html

Clase FileReader: esta clase se utiliza para leer los caracteres de un fichero

FileReader fr = new FileReader(fichero);

http://docs.oracle.com/javase/6/docs/api/java/io/FileReader.html

Clase BufferedReader: esta clase lee texto línea a línea de un Reader, permite leer caracteres, arrays y lineas.

BufferedReader br = new BufferedReader(fr);

http://docs.oracle.com/javase/6/docs/api/java/io/BufferedReader.html

Clase RandomAccessFile

Los ficheros de acceso aleatorio permiten elegir una situación dentro del fichero desde la cual queremos trabajar, sin necesidad de recorrer todo el fichero primero. Para esto necesitamos la clase RandomAccessFile, que proporciona métodos de lectura y escritura para estos ficheros (DataInput y Data Output).

Ejemplo: Programa Java que pide un número entero por teclado y lo añade al final de un fichero binario enteros.dat que contiene números enteros. El programa utiliza un método mostrarFichero() que se llama dos veces. La primera muestra el contenido del fichero antes de añadir el nuevo número y la segunda llamada muestra el fichero después de añadirlo.

import java.io.EOFException;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.Scanner;

public class Random1 {

static Scanner sc = new Scanner(System.in);
static RandomAccessFile fichero = null;

public static void main(String[] args) {
int numero;
try {
//se abre el fichero para lectura y escritura
fichero = new RandomAccessFile("/ficheros/enteros.dat", "rw");
mostrarFichero(); //muestra el contenido original del fichero
System.out.print("Introduce un número entero para añadir al final del fichero: ");
numero = sc.nextInt(); //se lee el entero a añadir en el fichero
fichero.seek(fichero.length()); //nos situamos al final del fichero
fichero.writeInt(numero); //se escribe el entero
mostrarFichero();//muestra el contenido del fichero después de añadir el número

} catch (FileNotFoundException ex) {
System.out.println(ex.getMessage());
} catch (IOException ex) {
System.out.println(ex.getMessage());
} finally {
try {
if (fichero != null) {
fichero.close();
}
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
}

public static void mostrarFichero() {
int n;
try {
fichero.seek(0); //nos situamos al principio
while (true) {
n = fichero.readInt(); //se lee un entero del fichero
System.out.println(n); //se muestra en pantalla
}
} catch (EOFException e) {
System.out.println("Fin de fichero");
} catch (IOException ex) {
System.out.println(ex.getMessage());
}
}
}

Fuentes:

Ejemplo RandomAccessFile

Clase RandomAccessFile

Utilización de ficheros en Java
Puntúa este artículo

Filed Under: Acceso a Datos Tagged With: clases ficheros java, ficheros java, Java, RandomAccessFile Java

Reader Interactions

Deja un comentario Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Primary Sidebar

software developer

¡Hola! Soy Daniel López, un apasionado del desarrollo de aplicaciones web y el marketing online.

Desde hace más de 10 años sabía que quería dedicarme a esto y... aquí estoy trabajando y disfrutando haciendo lo que me gusta, aplicaciones web y ayudando a empresas en su transformación digital.

También tengo mis propios proyectos en los cuales me encargo desde el desarrollo hasta la optimización para buscadores (SEO). Puedes encontrar más información en mi servicio de Consultor SEO online.

Copyright © 2025 · Daniel López - Todos los derechos reservados