Zabezpieczenie przy otwozeniu/zapisaniu

0

Program ma czytać z pliku txt i zapisywać do pliku txt.
Aby zabezpieczyć się przed otworzeniem/zapisaniem pliku bmp użyłem
FileNameExtensionFilter filter = new FileNameExtensionFilter("Pliki tekstowe", "txt");
jednak dalej pozostaje możliwość ręcznego wpisania nazwy z błędnym rozszerzeniem.

Jakiej funkcji użyć, alby się przed tym zabezpieczyć?

0

Spróbuj użyć
fileChooser.setFileFilter(filter);
zamiast
fileChooser.addChoosableFileFilter(filter);

0

Tak właśnie mam, ale to zapobiega tylko wyświetlaniu "złych" typów, ale można nadal ręcznie wpisać plik z błędnym rozszerzeniem.

Treść całego otwierania(zapis będzie analogiczny więc nie podaje)

FileNameExtensionFilter filter = new FileNameExtensionFilter("Pliki tekstowe", "txt");
jfc.setFileFilter(filter);
int odpowiedz = jfc.showOpenDialog(this);
if (odpowiedz == JFileChooser.APPROVE_OPTION) { // jeśli user wybierze jakiś plik
        try {
                okno.setText("");
                f=jfc.getSelectedFile();
                BufferedReader bufor = new BufferedReader(new FileReader(jfc.getSelectedFile()));
                String linia = bufor.readLine();
                while (linia != null) {
                        okno.append(linia + "\n");
                        linia = bufor.readLine();
                }
                bufor.close();
        } catch (FileNotFoundException file)  {
                JOptionPane.showMessageDialog(this, "Nie ma pliku.", "Komunikat", JOptionPane.PLAIN_MESSAGE);
        } catch (IOException wyjatek) {
                JOptionPane.showMessageDialog(this, "Błąd I/O", "Komunikat", JOptionPane.PLAIN_MESSAGE);
        }
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1