martes, 15 de septiembre de 2015

ARCHIVOS EN JAVA
Un archivo o fichero, son datos de una variable extendida que se identifican con un nombre, estos nombres suelen tener partes separadas por un punto, la primera es su propósito y la segunda la extensión, que indica el tipo de datos que contiene. Los archivos de .class tienen la definición de un clase de Java y el código ejecutable para sus métodos, mientras que uno terminado en .java tiene el texto del código fuente que ingreso el programador. Estos tipos de archivos o ficheros se dividen en tres tipos según su organización, los cuales son:
  • Organización secuencial: Son los registros que se almacenan consecutivamente en una memoria, teniendo en cuenta el orden lógico en el cual fueron ingresados.
  • Organización directa o aleatoria: Este tipo de almacenamiento no toma en cuenta el orden en el cual fueron ingresados para realizar el orden físico de almacenamiento en la memoria, en otras palabras, puede que el orden de almacenamiento en la memoria no sea al mismo en el que se a ingresado.
  • Organización indexada: En la organización indexada se contienen dos tipos de ficheros, los cuales son los ficheros de datos (contienen información) y los ficheros de indice (los cuales contienen la posición de cada uno de los registros en el fichero de datos).

También se pueden clasificar los tipos de ficheros según su clasificación:
  • Acceso secuencial: En este fichero es requerido tener un acceso en todos lo registros posteriores al que se va a consultar.

  • Acceso directo aleatorio: Por otro lado ese fichero no requiere del acceso a todos los registros para tomar la información requerida de registros posteriores.

O de otra manera clasificar estos ficheros teniendo en cuenta la información ingresada:
  • Ficheros binarios: Este tipo de fichero como lo dice su nombre, almacena secuencias de dígitos binarios.

  • Ficheros de texto: Por otro lado este tipo de ficheros almacena caracteres alfanuméricos en un formato estándar, estos pueden ser leídos y/o editados por aplicaciones que se denomina editores de texto.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 



Creación de un fichero en Java
Para crear una clase en java, como primer paso tenemos que apoyarnos en la clase de Java OI la cual nos proporcionara el método que necesitamos de creteNewFile para generar el fichero en el path que deseemos, para crear nuestro fichero deberemos tener en cuenta tener creado el directorio base donde se encontrara ubicado nuestro fichero, por ejemplo si vamos a crear un fichero indicando el path "c:templineadecodigoficheroTexto":

1. File fichero = new File ("c:\temp\lineadecodigo\fichero.txt");

o también se puede indicar el directorio y fichero por aparte:

1. File fichero = new File ("c:\temp\victor","fichero.txt");

Debemos realizar el uso de la doble barra para indicar el directorio, si se utiliza una sola barra se tomara por parte del sistema de que es una secuencia de escape del estilo n b t.

  1. try {
  2. // A partir del objeto File creamos el fichero físicamente
  3. if (fichero.createNewFile())
  4. System.out.println("El fichero se ha creado correctamente");
  5. else
  6. System.out.println("No ha podido ser creado el fichero");
  7. } catch (IOException ioe) {
  8. ioe.printStackTrace();
  9. }


Escribir y leer un fichero
Por primera parte enseñaremos una primera clase la cual esta encargada de almacenar en un fichero de texto que quieras ya sea de tipo texto o binario,en este caso la variable que ya cuenta con un valor asignado desde el principio podrian tender a ser mas interactivos  bien podría ser mas interactivo, ejemplo:

  • Que se pida el dato por consola
  • Que de opciones para guardar algunas cosas
  • Entre otros
De igual manera puede contar con muchas mas cosas, si usted desea puede realizarle los cambios respectivos a como usted considere mejor quede. por otro lado, la segunda nos enseña la lectura del contenido que tienen actualmente un archivo de texto, de igual manera se trabajara con el mismo nombre de la clase posterior a esta.



/*Clase que permite escribir en un archivo de texto*/

//Importamos clases que se usaran
import java.io.File;
import java.io.FileWriter;

public class Escribir
{
public static void main(String []args)
{

//Un texto cualquiera guardado en una variable
String saludo="Hola";

try
{
//Crear un objeto File se encarga de crear o abrir acceso a un archivo que se especifica en su constructor
File archivo=new File("texto.txt");

//Crear objeto FileWriter que sera el que nos ayude a escribir sobre archivo
FileWriter escribir=new FileWriter(archivo,true);

//Escribimos en el archivo con el metodo write 
escribir.write(saludo);

//Cerramos la conexion
escribir.close();
}

//Si existe un problema al escribir cae aqui
catch(Exception e)
{
System.out.println("Error al escribir");
}
}
}

/*Clase que permite leer un archivo de texto*/

//Importamos clases a usar
import java.io.FileReader;
import java.io.BufferedReader;
public class Leer
{
public static void main(String arg[])
{
//Creamos un String que va a contener todo el texto del archivo
String texto="";

try
{
//Creamos un archivo FileReader que obtiene lo que tenga el archivo
FileReader lector=new FileReader("texto.txt");

//El contenido de lector se guarda en un BufferedReader
BufferedReader contenido=new BufferedReader(lector);

//Con el siguiente ciclo extraemos todo el contenido del objeto "contenido" y lo mostramos
while((texto=contenido.readLine())!=null)
{
System.out.println(texto);
}
}

//Si se causa un error al leer cae aqui
catch(Exception e)
{
System.out.println("Error al leer");
}
}
}




No hay comentarios:

Publicar un comentario