Logo Grupo Codesi

JFileChooser en Java Swing

Clase y Objeto JFileChooser en Java Swing

JFileChooser en Java Swing

JFileChooser en Java Swing nos sirve para abrir un cuadro de diálogo para seleccionar un archivo y poder trabajar con este archivo mediante sus métodos y propiedades; dicho objeto puede trabajar practicamente con cualquier tipo de archivo, dependerá de nuestros conocimientos para manipular la información que lleve dentro dicho documento seleccionado, la cual proporciona un UI para elegir un fichero de una lista. Un selector de ficheros es un componente que podemos situar en cualquier lugar del GUI de nuestro programa. Sin embargo, normalmente los programas los muestran en diálogos modales porque las operaciones con ficheros son sensibles a los cambios dentro del programa.
La clase JFileChooser en Java Swing hace sencillo traer un diálogo modal que contiene un selector de ficheros. Los selectores de ficheros se utilizan comúnmente para dos propósitos: Para presentar una lista de ficheros que pueden ser abiertos por la aplicación. Para permitir que el usuario seleccione o introduzca el nombre de un fichero a grabar. Observa que el selector de ficheros ni abre ni graba ficheros. Presenta un GUI para elegir un fichero de una lista. El programa es responsable de hacer algo con el fichero, como abrirlo o grabarlo.

Es importante para la realización de programas como estos, tener buenas bases de programación en java, para ello dejamos este curso de java presencial y 100% práctico.

Como la mayoría de los programadores sólo quieren un selector para abrir o para grabar ficheros, la clase JFileChooser proporciona los métodos convenientes para mostrar estos tipos de selectores de ficheros en un diálogo. Nuestro primer ejemplo, FileChooserDemo.java, ilustra estos usos: Cuando se pulsa el botón Open el programa trae un open file chooser. Cuando se pulsa el botón Save el programa trae un save file chooser. Aquí podemos ver una imagen de un selector de apertura de ficheros: Aquí podemos ver el código que crea y muestra el selector de apertura de ficheros:

codigo jfilechooser en swing

Por defecto, un selector de ficheros que no haya sido mostrado anteriormente muestra todos los ficheros en el directorio del usuario. Podemos especificarle un directorio inicial utilizando uno de los otros constructores de JFileChooser, o podemos selecccionar el directorio directamente con el método setCurrentDirectory. El programa de ejemplo utiliza el mismo ejemplar de JFileChooser para mostrar el selector de grabar ficheros. Aquí tenemos el método actionPerformed para el oyente del botón Save: (Aunque a decir verdad el método actionPerformed es un método de la interface actionEvent el cual más adelante explicaremos a detalle de como funciona una interface.)

boton para jFileChooser en swing

Utilizando el mismo selector de ficheros para abrir y grabar ficheros, el programa consigue estos beneficios: El selector recuerda el directorio actual entre usos, por eso los diálogos de abrir y grabar comparten el mismo directorio actual. Sólo tenemos que personalizar un selector de ficheros, y nuestra personalización se aplicará a las dos versiones, la de apertura y la de grabación. Cómo hemos podido ver en los fragmentos de código anteriores, los métodos showXxxxDialog devuelven un entero que indica si el usuario ha seleccionado un fichero. Podemos utilizar el valor de retorno para determinar si realizar o no la operación requerida. Si el usuario elige un fichero, el código llama a getSelectedFile sobre el selector de ficheros para obtener un ejemplar de File, que representa el fichero elegido. El ejemplo obtiene el nombre del fichero y lo utiliza en un mensaje.

Es importante para poder realizar todos estos elementos con Swing, tener una base solida de la programación en Java por ello dejamos este curso de java ampliamente recomendable.

programando con java

Articulos Relacionados a la tecnología Java

Seguridad de Java Java para Android Applets Java Juegos en Java Web Services Java Servidor Java Java 8 Fundamentos de Java 8 JCombobox en Java Swing
Diplomado Java

Diseño de paginas Web Grupo Codesi