Guardar fichero con una determinada extension??¿¿

corina
11 de Febrero del 2005
En la aplicaci贸n que estoy realizando tengo la opci贸n de guardar y abrir ficheros. Para ello utilizo un JFileChooser. A la hora de guardar ficheros quiero que estos tengan una extensi贸n predeterminada, existe alguna forma de hacerlo?

Gracias de antemano
Un saludo y a cuidarse :D

Aleister
11 de Febrero del 2005
Tal vez:

import javax.swing.*;

public class Tester extends JFrame {
public Tester() {
super();
setDefaultCloseOperation(EXIT_ON_CLOSE);

JFileChooser fileChooser = new JFileChooser();
ImageFilter imaFilter = new ImageFilter();
fileChooser.setFileFilter(imaFilter);

fileChooser.showSaveDialog(this);
}
public static void main(String arks[]) {
Tester tester = new Tester();
tester.setSize(500, 500);
tester.setVisible(true);
}
}

import java.io.File;
import javax.swing.*;
import javax.swing.filechooser.*;

public class ImageFilter extends FileFilter {

// Accept all directories and all gif, jpg, or tiff files.
public boolean accept(File f) {
if (f.isDirectory()) {
return true;
}

String extension = Utils.getExtension(f);
if (extension != null) {
if (extension.equals(Utils.tiff) ||
extension.equals(Utils.tif) ||
extension.equals(Utils.gif) ||
extension.equals(Utils.jpeg) ||
extension.equals(Utils.jpg)) {
return true;
} else {
return false;
}
}

return false;
}

// The description of this filter
public String getDescription() {
return "Just Images";
}
}

import java.io.File;

public class Utils {

public final static String jpeg = "jpeg";
public final static String jpg = "jpg";
public final static String gif = "gif";
public final static String tiff = "tiff";
public final static String tif = "tif";

/*
* Get the extension of a file.
*/
public static String getExtension(File f) {
String ext = null;
String s = f.getName();
int i = s.lastIndexOf('.');

if (i > 0 && i < s.length() - 1) {
ext = s.substring(i+1).toLowerCase();
}
return ext;
}
}

corina
11 de Febrero del 2005
Mmmmm, el c贸digo que me has puesto si no me equivoco es para filtrar el tipo de ficheros que se veran al abrir el JFileChosser, ya utilizo uno con la extensi贸n que yo deseo. Yo me refer铆a a como podia hacer para que un fichero a la hora de grabarlo lo hicera con una extension predefinida, es decir, cuando tu realizas un fichero en excel este se graba con la extensi贸n ".xls". Mi pregunta era como hacer esto posible, es decir, como otorgarle una extensi贸n predeterminada a los ficheros que yo voy creando con mi aplicaci贸n. Dicha extensi贸n es la que utilizar茅 a la hora de hacer el filtro en el JFileChooser.
Finalmente he encontrado una soluci贸n, algo chapucera creo pero de momento funciona.

Gracias de todas formas, se agradece encontrar alguna contestaci贸n jejeje.
Un saludo y a cuidarse.

jorge
11 de Febrero del 2005
Escribiste que ya habias encontrado una soluci贸n como le hiciste? Podr铆as explicarme porfavor.

gracias