JFileChooser και αλλαγή extension

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
Dr_Java
Δημοσιεύσεις: 218
Εγγραφή: 15 Αύγ 2003 16:42
Τοποθεσία: πειραιας
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Dr_Java » 01 Απρ 2005 01:47

Γεια χαρα σε όλους...

Ψάχνω εδω και μέρες ένα δείγμα κώδικα για να βάλω σε ένα JFileChooser δικό μου extension. Μέσα στο class JFileChooser υπάρχει μια μέθοδος setFileFilter(FileFilter file) έχει να κάνει σχέση με αυτό ή όχι? Κοίταξα στην sun και έχει ένα παράδειγμα με μια class ExampleFileFilter αλλά δεν την έχει πουθενα για download. Θα μου πείς μπορεί και ο χρήστης να βάζει το extension που χρειάζετε.. ναι αλλά εγω δεν θέλω κάτι τέτοιο σε καμία περίπτωση.

Ερώτηση: θα πρέπει να φτιάξω εγώ δικό μου class όπως η sun με το ExampleFileFilter ή υπάρχει ήδη κάτι έτοιμο που μπορώ να χρησιμοποιήσω?
Εικόνα

Άβαταρ μέλους
softius
Script Master
Δημοσιεύσεις: 241
Εγγραφή: 11 Ιαν 2004 19:07
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από softius » 01 Απρ 2005 10:00

Θα πρέπει να φτιάξεις μία κλάση εσύ. Η κλάση αυτή θα πρέπει να κάνει extends την κλάση FileFilter.

Όπως βλέπεις η συγκεκριμένη κλάση έχει δύο abstract μεθόδους, τις οποίες εσύ θα πρέπει να υλοποιήσεις! Η πρώτη μέθοδος (accept) θα καλείται αυτόματα κάθε φορά που επιλέγεται ένα file και εσύ θα εκτελάς κάποιους ελέγχους. Με βάση αυτούς τους ελέγχους θα επιστρέφεις true ή false. H δεύτερη μέθοδος επιστρέφει την περιγραφή του filter.

Στο επόμενο απλό παράδειγμα θα εμφανίζονται μόνο τα αρχείο με κατάληξη .php

Κώδικας: Επιλογή όλων

public MyFileChooser extends FileFilter {
  public boolean accept(File path) {
    //8eloume na emfanizontai ta directories
    if ( path.isDirectory() ) {
      return true;
    }
    //an den einai directory, tote ele3e an teleiwnei se .php
    return path.getName().endsWith(".php");
  }

  public String getDescription() {
    return "PHP Files";
  }
}
Το ExampleFileChooser που λες υπάρχει στο directory της java στον υπολογιστή σου. Πήγαινε στο path όπου βρίσκεται η java και στη συνέχεια ακολούθησε το path /demo/jfc/FileChooserDemo/src :pint:

Άβαταρ μέλους
Dr_Java
Δημοσιεύσεις: 218
Εγγραφή: 15 Αύγ 2003 16:42
Τοποθεσία: πειραιας
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Dr_Java » 01 Απρ 2005 14:02

Φίλε μου σε ευχαριστώ... Τελικά θα καθίσω να φτιάξω εγώ μια μέθοδο για να αλλάξω το extension (Πχ από .txt να το κάνω .ecr) γιατί από'τι βλέπω μόνο έτσι θα παίξει... Anyway εαν έχεις να προτείνεις κάτι πάνω σε αυτό.. εδώ θα είμαι!!!
Εικόνα

Άβαταρ μέλους
softius
Script Master
Δημοσιεύσεις: 241
Εγγραφή: 11 Ιαν 2004 19:07
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από softius » 02 Απρ 2005 16:14

Να κάτι που είχα φτιάξει πριν καιρό...

Κώδικας: Επιλογή όλων

import javax.swing.filechooser.FileFilter;
import java.io.File;
import java.util.regex.*;

public class FileExtensionFilter implements FileFilter {
    private Pattern pattern;
    private String descr;

    /**
     * Creates a new FileExtensionFilter
     *
     * @param ext the file extensions, separated by commas
     * @param descr the description 
     */
    public FileExtensionFilter(String ext, String descr) {
        this.descr = descr;
        ext = ".*\\.(" + e.replaceAll(",", "|") + ")";
        pattern = Pattern.compile(ext, Pattern.CASE_INSENSITIVE);
    }
    
    public boolean accept(File path) {
        if ( path.isDirectory() ) {
                return true;
        }
        return pattern.matcher(path.getName()).matches();
    }

    public String getDescription() {
        return descr;
    }
}
Τα extensions διαχωρίζονται με κόμμα. Για παράδειγμα:

Κώδικας: Επιλογή όλων

FileExtensionFilter phpFilter = new FileExtensionFilter("php,php3,php4", "PHP Files");
FileExtensionFilter cssFilter = new FileExtensionFilter("css", "CSS Files");
FileExtensionFilter htmlFilter = new FileExtensionFilter("html,htm", "HTML Files");

Άβαταρ μέλους
Dr_Java
Δημοσιεύσεις: 218
Εγγραφή: 15 Αύγ 2003 16:42
Τοποθεσία: πειραιας
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Dr_Java » 02 Απρ 2005 17:18

Φιλε μου χίλια ευχαρίστω με εβγαλες από έναν παραπάνω μπελά... :D
Εικόνα

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

JFileChooser και αλλαγή extension

Δημοσίευση από skeftomilos » 03 Απρ 2005 07:31

Ωραίος, καθαρός κώδικας Java!
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

Άβαταρ μέλους
Dr_Java
Δημοσιεύσεις: 218
Εγγραφή: 15 Αύγ 2003 16:42
Τοποθεσία: πειραιας
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Dr_Java » 03 Απρ 2005 15:01

Ναι και εγω συμφωνώ... Πολύ καλός ο κώδικας. :D softius έχεις γράψει καμια εφαρμογή??
skeftomilos να σε ρωτήσω κάτι...?
Ασχολεισαι μόνο με javascript...????
Τουλάχιστον εσυ δεν κάνεις post φίλε.... εαν τα πάρεις όλα μαζί τα Post σου γράφεις βιβλίο....!!!! :wink: :D :kaloe:
Εικόνα

Άβαταρ μέλους
softius
Script Master
Δημοσιεύσεις: 241
Εγγραφή: 11 Ιαν 2004 19:07
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από softius » 03 Απρ 2005 15:18

Εφαρμογή σε JAVA δεν έχω ξαναγράψει. Αυτό το διάστημα γράφω την πρώτη μου*. Αν εξαιρέσουμε βέβαια μερικά χαζά προγραμματάκια στο σχετικό μάθημα πριν δύο χρόνια :D

Όσο για τον κώδικα προσπαθώ να είναι όσο πιο καθαρός γίνεται :) Στο κάτω-κάτω εγώ πρέπει να τον διαβάζω για να καταλάβω τι και πως είχα φτιάξει πριν μερικούς μήνες :hammer: :hammer:

* για την διπλωματική μου εργασία

Άβαταρ μέλους
Dr_Java
Δημοσιεύσεις: 218
Εγγραφή: 15 Αύγ 2003 16:42
Τοποθεσία: πειραιας
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Dr_Java » 03 Απρ 2005 15:54

Κοίτα γράφω αρκετο καιρό εφαρμογές σε java λόγο πανεπιστημίου και εγώ.. Έχω δεί αρκετούς κώδικες λόγο του ότι έχω πάρει group projects και ειλικρήνα μου έβγαζε την πίστη να τους διαβάσω γιατί δεν είχαν comments και πίστεψέ με είναι ότι χειρότερο!!! Anyway αυτή η εφαρμοφή που κάνω τώρα είναι η δεύετη σοβαρή... Έχει να κάνει με encryption - decryption, backup και αποστολή σε server. ΠΙΚΡΕΣ ασε ασε... :(
Εικόνα

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

JFileChooser και αλλαγή extension

Δημοσίευση από skeftomilos » 04 Απρ 2005 13:50

Dr_Java έγραψε:skeftomilos να σε ρωτήσω κάτι...?
Ασχολεισαι μόνο με javascript...????
ASP, VB.NET, C#, databases...

Με τη JavaScript ασχολούμαι 8 μήνες περίπου. Είναι εντυπωσιακή γλώσσα, εντυπωσιακά υποτιμημένη, και με πρακτικές δυνατότητες που λίγοι έχουν αντιληφθεί. Νομίζω ότι για τους περισσότερους JavaScript σημαίνει form validation, dropdown menus και ... fancy gadgets από το www.hotscripts.com. Είναι πολύ περισσότερα!
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Rapid-eraser » 04 Απρ 2005 13:55

emeva prosopika dev me xalaei va ta ma8o sosta afta ta
ipotimimeva pragmata "form validation, dropdown menus και ... fancy gadgets"
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

JFileChooser και αλλαγή extension

Δημοσίευση από skeftomilos » 04 Απρ 2005 17:01

Το ενδιαφέρον είναι ότι για dropdown menus η JavaScript είναι (σχεδόν) περιττή! Για standards-compliant browsers αρκεί CSS: Suckerfish Dropdowns.
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

Άβαταρ μέλους
Dr_Java
Δημοσιεύσεις: 218
Εγγραφή: 15 Αύγ 2003 16:42
Τοποθεσία: πειραιας
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Dr_Java » 05 Απρ 2005 00:23

Δυστηχός υπάρχουν και άλλες γλώσσες που έχουν υποτιμηθεί (ή δεν τις θέλουν οι προγραμματιστές) και μια από αυτές πιστεύω είναι και η java. Τι εννοώ??? Οτι ο κόσμος θα κοιτάξει να μάθει άλλες γλώσσες πρώτα και από τις τελευταίες ίσως την java. Ναι εντάξη, θα μου πεις ένας αρχάριος δεν θα ξεκινήσει με java αλλά γιατί όχι στη πορεία να μην εμβαθύνει πάνω σε αυτή...??!?!?!?!? Και το ποιό κουλό που έχω ακούσει είναι οτι έχει περιορισμένες δυνατότητες!!!! Ναι βεβαια... γιαυτό έχει γραφτεί όλοκληρο λειτουργικό πάνω σε αυτή (Solaris)... Τεσπα!!!

Μια εκφραση που μου αρέσει είναι "Ο καθένας όπως βολεύεται... " και πιστεύω κολλάει εδώ!!! :D :wink:
Εικόνα

Άβαταρ μέλους
cordis
Administrator, [F|H]ounder, [C|S]EO
Δημοσιεύσεις: 27626
Εγγραφή: 09 Οκτ 1999 03:00
Τοποθεσία: Greece
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από cordis » 05 Απρ 2005 00:59

o Solaris Kernel είναι γραμμένος σε java; θα τρελαθώ... :P :P :P
Δεν απαντάω σε προσωπικά μηνύματα με ερωτήσεις που καλύπτονται από τις ενότητες του forum. Για ο,τι άλλο είμαι εδώ για εσάς.
- follow me @twitter

Άβαταρ μέλους
Dr_Java
Δημοσιεύσεις: 218
Εγγραφή: 15 Αύγ 2003 16:42
Τοποθεσία: πειραιας
Επικοινωνία:

JFileChooser και αλλαγή extension

Δημοσίευση από Dr_Java » 05 Απρ 2005 01:17

Οχι??? αλλα σε τι ???
Εικόνα

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης