BufferedWriter no está escribiendo una nueva línea en un archivo para una cadena que tenga "\ n" agregada

Intenté algunas cosas en Swing (Java), pero obtuve resultados muy extraños.

Estoy obteniendo una cadena deJTextArea.getText() método y agregarle "\ n". Esta cadena resultante la estoy escribiendo en un archivo, usandoBufferedWriter que está encadenandoFileOutputStream a un archivo Pero el nuevo carácter de línea "\ n" no está creando una nueva línea en el archivo .txt.

¿Cómo puedo solucionar este problema?

Mi código está aquí:

package quizCardGame;

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.ArrayList;
import javax.swing.*;

public class QuizCardBuilder extends JFrame {
private static final long serialVersionUID = 1L;

private JTextArea question;
private JTextArea answer;
private Font font;
private ArrayList<QuizCard> deck;
private int countOfDeck;
private JLabel countLable;

public QuizCardBuilder() {
    super();
    deck = new ArrayList<QuizCard>();
    buildGUI();

}

public static void main(String[] args) {
    QuizCardBuilder app = new QuizCardBuilder();
}

public void buildGUI() {
    font = new Font(Font.SERIF, Font.BOLD, 12);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JPanel panel = new JPanel();
    this.getContentPane().add(BorderLayout.CENTER, panel);

    JPanel stats = new JPanel();
    countLable = new JLabel("Count: " + countOfDeck);
    stats.add(countLable);

    this.getContentPane().add(BorderLayout.SOUTH, stats);

    JLabel qLable = new JLabel("Question");
    panel.add(qLable);

    question = new JTextArea(5, 30);
    question.setLineWrap(true);
    question.setWrapStyleWord(true);
    question.setFont(font);

    JScrollPane qScroller = new JScrollPane(question);
    qScroller
            .setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
    qScroller
            .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);

    panel.add(qScroller);

    JLabel aLable = new JLabel("Answer");
    panel.add(aLable);

    answer = new JTextArea(5, 30);
    answer.setLineWrap(true);
    answer.setWrapStyleWord(true);
    answer.setFont(font);

    JScrollPane aScroller = new JScrollPane(answer);
    aScroller
            .setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
    aScroller
            .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);

    panel.add(aScroller);

    JButton nextButton = new JButton("Next");
    nextButton.addActionListener(new NextCardListener());

    panel.add(nextButton);

    JMenuBar menuBar = new JMenuBar();
    JMenu fileMenu = new JMenu("File");
    JMenuItem newMenuItem = new JMenuItem("New");
    JMenuItem saveMenuItem = new JMenuItem("Save");

    fileMenu.add(newMenuItem);
    fileMenu.add(saveMenuItem);
    menuBar.add(fileMenu);
    this.setJMenuBar(menuBar);

    newMenuItem.addActionListener(new NewMenuListener());
    saveMenuItem.addActionListener(new SaveMenuListener());

    this.setSize(350, 350);
    this.setVisible(true);
}

public class SaveMenuListener implements ActionListener {

    @Override
    public void actionPerformed(ActionEvent e) {
        deck.add(new QuizCard(question.getText(), answer.getText()));

        JFileChooser fileSave = new JFileChooser();
        fileSave.showSaveDialog(null);
        saveFile(fileSave.getSelectedFile());
    }

}

public void saveFile(File file) {

    try {
        BufferedWriter bw = new BufferedWriter(new FileWriter(file));
        for (QuizCard card : deck) {
            bw.write(card.getQuestion() + "/");
            bw.write(card.getAnswer() + "\n");
        }

        bw.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

}

public class NewMenuListener implements ActionListener {

    @Override
    public void actionPerformed(ActionEvent e) {
        deck.clear();
        countOfDeck = deck.size();
        countLable.setText("Count: " + countOfDeck);
        clearText();
    }

}

public class NextCardListener implements ActionListener {

    @Override
    public void actionPerformed(ActionEvent e) {
        deck.add(new QuizCard(question.getText(), answer.getText()));
        countOfDeck = deck.size();
        countLable.setText("Count: " + countOfDeck);
        clearText();
    }

}

private void clearText() {
    question.setText("");
    answer.setText("");
}

}