Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Salvare un file

    Dovrei salvare un file ma quando apro la finestra di salvataggio tramite:
    JFileChooser fc = new JFileChooser();
    fc.showSaveDialog(SalvaMappa);

    Posso salvare ma vorrei che in automatico venisse inserita l'estensione .txt

    Qualcuno può dirmi come fare?

  2. #2
    nomeFile=nomeFile+".txt" può andare bene?

  3. #3
    no visto che vorrei che quando si apre la finestra di salvataggio come tipo di file esca in automatico .txt

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    nomeFile=nomeFile+".txt" può andare bene?
    A me sembra un'ottima soluzione...

    no visto che vorrei che quando si apre la finestra di salvataggio come tipo di file esca in automatico .txt
    Beh, se vuoi che nella finestra di dialogo ci sia scritto file di testo, aggiungi un FileFilter.
    Pero' l'estensione sul file salvato la devi mettere comunque tu.
    codice:
    JFileChooser fc = new JFileChooser();
    FileFilter filter = new FileFilter() {
       public boolean accept(File f) {  
          if(f.isAbsolute()) {
             return true;
          }
          String extension = f.getName();
          if (extension != null) {
             if (extension.endsWith("txt")) {
                return true;
             } else {
                return false;
             }
          }
                    
          return false;
       }
       public String getDescription() {
          return "File di testo";
       }
    };
    fc.addChoosableFileFilter(filter);
    fc.showSaveDialog(SalvaMappa);
    P.s. Se usi Java 6 puoi usare direttamente la classe FileNameExtensionFilter

  5. #5
    il metodo è ok io avevo risolto creando la classe che estendeva FileFilter..
    ma non so perchè mi da errore su addChoosableFileFilter

    Da eclipse: The method addChoosableFileFilter(FileFilter) in the type JFileChooser is not applicable for
    the arguments (FileFilter)

    non capisco il motivo..
    mi sembra assurdo ma è così ...

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    puoi postare il codice che ti da errore?
    Da quando istanzi il FileFilter fino alla riga in cui chiami addChoosableFileFilter.

  7. #7
    ho ricopiato il tuo codice ( copia e incolla )

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    Forse hai importato la classe sbagliata
    codice:
    //ERRATO import java.io.FileFilter;
    import javax.swing.filechooser.FileFilter; //GIUSTO

  9. #9
    Si così va .. però ho trovato un metodo che serve sia per il save che per il load che mi fa più comodo la scrivo non si sa mai serva a qualcuno:
    Ci si crea una nuova classe che estende FileFilter:

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

    class Filtro extends FileFilter {

    protected String description;

    protected String extension;

    protected Filtro() {
    description = ".txt";
    extension = ".txt";
    }

    public String getDescription() {
    return description;
    }

    public boolean accept(File f) {

    if (f.isDirectory())
    return true;
    String path = f.getAbsolutePath();
    for (int i = 0; i < extension.length(); i++) {
    if (path.endsWith(extension)
    && (path.charAt(path.length() - extension.length()) == '.'))
    return true;
    }
    return false;
    }
    }

    e poi dove serve il filtro:

    JFileChooser fc = new JFileChooser();
    Filtro txtFiltro=new Filtro();
    fc.setFileFilter(txtFiltro);
    fc.addChoosableFileFilter(txtFiltro);


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.