JFileChooser продолжает добавлять расширение

Если я сохраню файл типа test.csv и открою его, JFileChooser увидит его как test.cvs. Когда я собираюсь сохранить его снова, он добавляет CSV, поэтому я получаю test.csv.csv и так далее. Я знаю, что это как-то связано с FileWriter, потому что я добавил расширение к файлу, например:

File fajl = new File (fc.getSelectedFile()+".csv");

Есть ли способ удалить расширение при открытии файла, и снова при его сохранении я не получу test.csv.csv?

Я пробовал с endWith и не повезло.

Это решило это для меня. Я использовал решение Тома ван дер Вурдта с небольшой модификацией:

 String s = fc.getSelectedFile().toString();
               int p = s.lastIndexOf('.');
               if(p>0){ s=s.substring(0,p);System.out.print(s);}

                 fajl = new File (s+".csv");

System.out.print предназначен только для проверки выходного имени файла.


person Anak1n    schedule 12.01.2014    source источник


Ответы (1)


Вы можете проверить, есть ли в конце имени файла «.csv», и добавить его только при необходимости:

String filePath = fc.getSelectedFile();

// add file extension if not already provided
if (!filePath.matches(".*\.csv$"))
{
  filePath += ".csv"
}

File fajl = new File(filePath);
person usr1234567    schedule 12.01.2014