2013-02-20 3 views
0

Я использую JFileChooser для создания функции сохранения. Но я хочу сохранить свои файлы в формате .rtf, как это сделать?Как сохранить файл в формате .rtf

Мой код прямо сейчас:

@Override 
    public void actionPerformed(ActionEvent e) { 

     JFileChooser saveFile = new JFileChooser(); 
     int option = saveFile.showSaveDialog(null); 
     saveFile.setDialogTitle("Save the file..."); 
//  saveFile.setFileFilter(new FileNameExtensionFilter("Text Files", "txt", "rtf")); 

     if (option == JFileChooser.APPROVE_OPTION) { 
      try { 
       BufferedWriter writer = new BufferedWriter(new FileWriter(saveFile.getSelectedFile().getPath())); 
       writer.write(text); 
       writer.close(); 

      } catch (IOException ex) { 

       ex.printStackTrace(); 
       System.out.println(ex.getMessage()); 
       JOptionPane.showMessageDialog(null, "Failed to save the file"); 
      } 
     } 
    }//End of method 
}//End of inner class 

Так мне нужно реализовать код для сохранения файла в формате .rtf

+0

Каково происхождение текста в 'writer.write (text);'? Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). –

+0

Его просто экземпляр изменен. Редактор JEditorPanePane = новый JEditorPane(); \t \t scrollPane.setViewportView (editorPane); \t \t text = editorPane.getText(); – Josef

+1

Не помещайте код в комментарии. Вместо этого [отредактируйте это в вопросе] (http://stackoverflow.com/posts/14981115/edit). –

ответ

2

, предполагающих (в отсутствие SSCCE), что JEditorPane уже установлено в text/rtf и содержат некоторые форматированный текст, самый простой способ сериализации это:

editorPane.write(writer); 

См JTextComponent.write(Writer) подробность.

Смежные вопросы