Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi,

kann mir einer sagen was daran falsch ist?

JFileChooser chooser = new JFileChooser();

// Note: source for ExampleFileFilter can be found in FileChooserDemo,

// under the demo/jfc directory in the Java 2 SDK, Standard Edition.

ExampleFileFilter filter = new ExampleFileFilter();

filter.addExtension("jpg");

filter.addExtension("gif");

filter.setDescription("JPG & GIF Images");

chooser.setFileFilter(filter);

int returnVal = chooser.showOpenDialog(parent);

if(returnVal == JFileChooser.APPROVE_OPTION) {

System.out.println("You chose to open this file: " +

chooser.getSelectedFile().getName());

}

Geschrieben

Welchen Fehler erhälst Du denn...wäre nicht schlecht zu wissen.

Aber ich kann ja mal blind raten :)

Hast Du die Klasse "ExampleFileFilter"?

FileFilter sind nämlich Interfaces. Und abgeleitete Klassen müssen die Methoden noch "füllen"

LoCal

Geschrieben

ich hatte mal in einem Projekt auch eine FileFilter-Klasse benötigt.

Eine Implementierung dieses Interface könnte z.b. so aussehen :


/**

  * Klasse implementiert die Methoden des Interface FileFilter.

  * Diese Klasse ermoeglicht es, Dateien zu filtern, die ein 

  * Template darstellen koennen.

  * Mit dem ImgFileFilter ist es moeglich nur die Dateien eines 

  * Verzeichnis zu filtern,

  * die einen zulaessigen Bildtyp repraesentieren (z.B. GIF, JPEG 

  * usw.).

  */

public class ImgFileFilter implements FileFilter{

/**

 * Die Methode accept entscheidet, ob eine Datei zulaessig ist

 * oder nicht.

 * @param file Datei, welche auf Zulaessigkeit geprueft werden

 *soll

 * @return boolean true, wenn Datei zulaessig ist, andernfalls 

 * false

 */

  public boolean accept(File file){

   //prüfen, ob es sich um eine Datei handelt und ob es eine 

   //Grafikdatei(jpg;gif;png) ist

   if (file.isFile()){

     //es sollten nur Betriebssystemunabhaengige Grafikformate

     //gefiltert werden

     if ((file.getName().endsWith(".png")) || (file.getName

     ().endsWith(".jpg")) || (file.getName().endsWith(".gif"))){

        return true;

     }

     else{

        return false;

     }

   }

   else{

      return false;

   }

  } // accept

} //Class ImgFileFilter


Viel Spaß :)

Geschrieben

Nein, das habe ich leider nicht gesucht. Wenn man so einen JFileChooser öffnet, steht doch unten in welchem Format man abspeichern will wie z.B. alle *.* oder *.jpg. Das habe ich gemeint.

Geschrieben

aber das macht mensch doch mit einem FileFilter. Du kannst Dir quasi soviele FileFilter machen wie du willst......... die erscheinen dann "unten"

Geschrieben

Bitte sag doch mal genau was du machen willst! Der fehler in deiner ursprünglichen Post war ja, daß die ExampleFileFiler gefehlt hat.

Geschrieben

wenn man z.B. einen JFileChooser öffnet bekommt man eine Öffnen- oder Speichern-Explorer. Da kann man doch angeben welche Dateitypen man sehen will und da will ich nicht nur "alle Dateien *.*" sehen sondern auch noch andere wie z.B. *.txt oder *.properties.

Geschrieben

yup, daß geht mit dem FileFilter. Der JFileChooser hat eine methode die heißt setFileFilter(FileFilter filter) und damit fügst du die "FilterOptionen" an.

Geschrieben

Ich habe das ganze so probiert aber ich bekomme es nicht zum laufen. Das ist meine JFileChooser und meine FileFilter:

private void saveFile3()

{

jfc = new JFileChooser();

jfc.setCurrentDirectory(new File(""));

jfc.setFileFilter(new FileFilter()

{

public boolean accept(File f)

{

return f.getName().endsWith(".java") || f.isDirectory();

}

public String getDescription()

{

return "Java Programs (*.java)";

}

});

int result = jfc.showSaveDialog(this);

if (result == JFileChooser.APPROVE_OPTION)

{

File f = jfc.getSelectedFile();

tfspeicherort.setText(f.getPath() + f.getName());

writeFile3(f);

}

}

Geschrieben

der Fehler lautet:

VisualCafe (15:03:40): Error: D:\VisualCafeEE451\VCafe\Projects\Oberflaeche.java(312): setFileFilter(javax.swing.filechooser.FileFilter) in javax.swing.JFileChooser cannot be applied to (<anonymous java.io.FileFilter>)

Geschrieben

hi,

ich schaffe es leider nicht, hier zu einen FileFilter zu programmier. kannst du mir vielleicht sagen wie ich es schaffen kann?

private void saveFile3()

{

jfc = new JFileChooser();

jfc.setCurrentDirectory(new File(""));

int result = jfc.showSaveDialog(this);

if (result == JFileChooser.APPROVE_OPTION)

{

File f = jfc.getSelectedFile();

tfspeicherort.setText(f.getPath());

tfspeicherortinhalt = tfspeicherort.getText();

writeFile3(f);

}

}

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...