You are on page 1of 14

Republica de Panamá

Centro Regional Universitario de


Veraguas

Licenciatura de Ingeniería en
Informática

Programación III

Laboratorio #5

Tema: Introducción a los


Archivos

Pertenece a:

Norberto Delgado
9-731-110

Profesor: Diego Santimateo

II Semestre del año 2008


Introducción

Este trabajo consiste en la implementación y


manejamiento de los archivo de lo que es la
apertura de un archivo y su inmediata lectura, de lo
que es la escritura en archivos, la creación de un
nuevo archivo en base de uno existente.
Java puede almacenar y leer diferentes tipos de
información de archivos tales como: binarios,
objetos java, texto, comprimidos, etc. En esta clase
nos ocuparemos de los archivo de texto y
orientaremos las operaciones de lectura y grabación
de registros o líneas, de manera similar a como
tratamos los objetos de entrada y salida por defecto,
eso significa que usaremos las mismas clases para
manejar archivos.

Java nos ofrece la clase FILE que permite crear


instancias asociadas con el nombre de un archivo,
no con su contenido, pero que facilita el manejo de
directorios y de archivos en los subdirectorios,
cambiar nombres, verificar existencia de archivos,
etc.
1- Compruebe la lectura de un archivo de texto
leyendo cada línea de su contenido y desplegándola
en la consola, usando la siguiente codificación.
Prepare tres archivos de texto, uno que corresponda
a un programa Java previamente utilizado, otro de
un documento HTML (copie el ejemplo de:
http://www.programacion.com/html/tutorial/curso/3/
y guárdelo en la misma carpeta que contiene su
programa Java, con la extensión .html) y otro creado
con el bloc de notas.

import java.io.*;
import javax.swing.*; //para usar las ventanitas
public class LeeconReader {
public static void main(String[] args) {
String archivoName;
archivoName = JOptionPane.showInputDialog(null,
"Indique nombre de archivo:");
try {
FileReader arch1 = new
FileReader(archivoName); // para poder leer
BufferedReader in = new
BufferedReader(arch1); // para poder leer por linea
String s = new String();
int i=1;
while((s = in.readLine())!= null) //lectura
del archivo
{
System.out.println("\nRegistro " +i +":" +
s );
i=i+1;
}
try {
in.close();
}
catch ( IOException e )
{
System.err.println( "El archivo no se
pudo cerrar correctamente" );
System.exit( 1 );
}

System.exit(0); //cierra hilo abierto por


ventana de diálogo
}
catch (Exception e)
{
System.err.println("***Error al leer o abrir el
archivo...\n" +e);
}

} //fin main
} // fin de la clase LeeconReader
2- En el siguiente ejemplo se utiliza la subclase
LineNumberReader de la clase BufferedReader en
consecuencia, también contiene el método
readLine(). Con esta clase se puede llevar el control
del número de línea que se está leyendo o
procesando. Revise cuidadosamente y pruebe el
programa con los archivos utilizados en el ejemplo
anterior.
/* Ejemplo de programa que lee un archivo
secuencial con el método readLine de la clase
BufferedReader*/

import java.io.*;
import javax.swing.*;
public class LeeNumeroRegistro
{
public static void main(String[] args)throws
Exception
{
File file = null;
FileReader freader=null;
LineNumberReader lnreader = null; //tiene el
método readLine
String archivo;
archivo=JOptionPane.showInputDialog(null,"Iintroduz
ca el nombre se su archivo:");
try
{
file =new File(archivo);
freader=new FileReader(file);
lnreader = new LineNumberReader(freader);
String line = "";
while((line=lnreader.readLine())!= null)
{
System.out.println("Linea"+lnreader.getLineNu
mber()+":"+line);
}
}
catch(Exception e)
{
System.out.println("Este archivo tiene un
problema para ser leído \n: " + e);
}
finally{ // cuando termina el try se realize
finally
{
freader.close();
lnreader.close();
}
}
}
3- Con el próximo ejemplo se copia un archivo,
pero la lectura se realiza sin usar BufferedReader,
solo FileReader y el método read. Se crea un nuevo
archivo datos1.txt. Verifica su contenido y comenta.
¿Puedes copiar el mismo archivo usando
BufferedReader? Intenta grabar usando la clase
FileWriter y PrintWriter con el método println, de
manera similar a como se usa FileReader,
BufferedReader y readline. No olvides comentar.
Conviene mostrar resultados al facilitador.

import java.io.*;
import javax.swing.*;
// No usa Buffered Reader para leer
public class LeeconRead {
public static void main(String[] args) throws
IOException
{
String archivo1;
String archivo2;
Archivo1=JOptionPane.showInputDialog(null,"Indique
el nombre de su primer archivo:");
Archivo2=JOptionPane.showInputDialog(null,"Indique
el nombre de su segundo archivo:");
try
{
File inputFile = new File(archivo1); //archivo
de entrada
File outputFile = new File(archivo2)
//archivo de salida
FileReader in=new FileReader(inputFile);
FileWriter out = new FileWriter(outputFile);
int c;
while ((c = in.read()) != -1) //método de
FileReader
{
out.write(c);
System.out.println("\nArchivo:"+ c);
}
in.close();
out.close();
}
catch(Exception e)
{
System.out.println("Este archivo tiene un
problema para ser leído \n: " + e);
}
}
}
4- Experimenta con el siguiente ejemplo, identifica
clases, objetos y métodos. Determina para qué sirve
el siguiente programa y expresa los resultados de tu
experiencia en el foro. ¿Qué cosas descubriste?

import javax.swing.*;
import java.io.FileReader;
public class LeeconRead
{
public static void main(String args[])
{
String archivo;
archivo=JOptionPane.showInputDialog(null,"introd
uzca el nombre de su archivo:");
try
{
FileReader fr = new FileReader(archivo);
int i;
while((i=fr.read())!=-1)
{
char c=(char)i;
System.out.print("\ncaracter ="+ c);
}
fr.close();
}
catch (Exception e)
{
System.out.println("Este archivo tiene un
problema para ser leído \n: " + e);
}
}
}
RESP: Entre las clases tenemos la principal con la
cual empezamos a ejecutar el código y es MiArchivo,
otra clase es FileReader con la cual leemos del
archivo.
El objeto creado es fr y el método es read.
Este programa determina las posiciones o mas bien
muestra en consola las posiciones de los caracteres
que se encuentran en el archivo.
Muestra la lectura de las posiciones de los valores
en el archivo
Conclusión

En este trabajo comprendí mejor y aprendí lo que es


el manejo de archivo utilizando java.
Lo que son los archivo en java nos permiten un
basto uso de ellos en diferentes posibles situaciones
en la que nos encontremos la necesidad de trabajar
con archivos ya que además de tener diferentes
formas de manejar dichos archivos en java, permite
el manejo de su contenido de manera eficaz y
practica además de fácil, ya que lo que son los
archivos en la programación es de básica
importancia debido a que estos nos permiten lo que
es un mayor porcentaje de contenido, mayor que en
otros tipos de posibles lugares donde se pueden
guardar información o datos.

You might also like