Posted by : ghel jueves, 8 de mayo de 2014

Crear una Clase para Ver Texto de un Archivo e Imágenes

Muchas veces queremos hacer aplicaciones que muestren el contenido de un archivo (de texto) y las figuras, esto lo podemos hacer rápidamente y fácilmente usando la clase CArchivo que te pongo, es importante recordad que varios controles (jLabel, jEditorPane) de Java soportan html para el caso de imágenes he usado este código para no complicar las cosas.

La Clase CArchivo

Esta clase tiene dos métodos, LeerArchivo() que permite leer los datos de un archivo de texto y devolver todo esto como cadena; VerImagen() que permite crear un texto html que te permitirá ver la imagen ya sea mediante un jLabel, jEditorPane u otos que soporten html. Investiga que controles en Java soportan html. Aquí tienes la case.

package XXXXXXXXXXXXXX;
/*Se usa java.io para activar las clases de manejo de archivos*/
import java.io.*;
/**
 * @author Angel M.T.
 */
public class CArchivo {
    /*
    Este método hace la lectura de archivos de texto que se encuentren en la
    carpeta texto de la raíz de tu proyecto, devuelve como cadena el contenido.
    */
    public String LeerArchivo(String nombreArchivo) {
        String ruta = System.getProperty("user.dir")+"/texto/"+nombreArchivo;
        try{
            // Abrimos el archivo
            FileInputStream fstream = new FileInputStream(ruta);
            // Creamos el objeto de entrada
            DataInputStream entrada = new DataInputStream(fstream);
            // Creamos el Buffer de Lectura
            BufferedReader buffer = new BufferedReader(new InputStreamReader(entrada));
            String strLinea;
            String salida = "";
            // Leer el archivo linea por linea
            while ((strLinea = buffer.readLine()) != null)   {
                // Imprimimos la línea por pantalla
                //System.out.println (strLinea);
                salida += strLinea;
            }
            // Cerramos el archivo
            entrada.close();
            return salida;
        }catch (Exception e){ //Catch de excepciones
            System.err.println("Ocurrio un error: " + e.getMessage());
            return "!!!!ERROR...";
        }
    }
    /*
    Este método permite mostrar una imagen con solo ponerle el nombre del
    archivo, pero las imágenes deben estar en la carpeta imágenes de la raíz
    de tu proyecto, devuelve texto html como respuesta para ver la figura.
    */
    public String VerImagen(String nombre)
    {
        String texto = "<html><center>";
        texto = texto + "<img src=\"";
        texto = texto + "file:///";
        texto = texto + System.getProperty("user.dir");//ruta de archivo
        texto = texto + "/imagenes/"+nombre+"\" >";
        texto = texto + "</center></html>";
        return texto;
    }
}

¿Como usar la Clase?

Paso 1. Debes agregar esta clase a tu proyecto, no olvides modificar el nombre del paquete (package).
Paso 2. Deberás crear dos carpetas una para archivos de texto llamada "texto" y otra para las figuras llamada "imagenes", estas carpetas las creas en la raíz de tu proyecto, como te muestro en la figura.


Paso 3. Crear un formulario como mínimo un botón y una etiqueta.

Debes crear el objeto con la siguiente linea:
  • ■ CArchivo oObjeto = new CArchivo();
Para ver un archivo de texto llamado "dato.txt", deberás ejecutar la siguiente linea en el botón:
  • ■ lblMensaje.setText(oReceta.LeerArchivo("dato.txt"));
Para ver una imagen llamada "gato.jpg", deberás ejecutar la siguiente linea en el botón:
  • ■ lblMensaje.setText(oReceta.VerImagen("gato.jpg"));

IMPORTANTE

  • ■ Es importante tener en cuenta que los archivos deben estar en las carpetas correspondientes que se explico en la parte superior.
  • ■ También ten en cuenta que si quieres mostrar texto e imagen al mismo tiempo deberás usar controles diferentes, aunque estudiando un poco la clase podrías hacer las modificaciones de forma que todo se muestre en un solo control.
  • ■ El archivo de texto también puede ser de HTML, pero ten en cuenta que Java acepta solo código básico de HTML, por tanto ni soñar poner estilos avanzados o JavaScript y otros.




RESUMEN DE HTML





Leave a Reply

Subscribe to Posts | Subscribe to Comments

Bienvenido a mi Blog

ZONA DE TRABAJO

DOCUMENTOS
...............................................
Archivos Compartidos
...............................................
Elementos Gráficos
...............................................
Video y Captura de Pantalla

Angel

Contenidos Populares

About

Angel Moreano Terrazas.