Вывести строки массива в JTextArea в Java - PullRequest
2 голосов
/ 28 января 2012

Привет! Я создал программу, которая читает текстовый файл со словами и добавляет его в массив. Теперь мне нужно, чтобы слова отображались в JTextArea, который я создал, но я не уверен, как это сделать. Текстовый файл содержит по одному слову в строке, поэтому я хочу, чтобы JTextArea также отображал их.

Вот код на данный момент. JTextArea, которое я имею, называется textArea (оно создано в другом методе)

    public static void file() {

    List<String> wordList = new ArrayList<String>();

    BufferedReader br = null;
    try {

        br = new BufferedReader(new FileReader("data/WordFile.txt"));
        String word;

        while ((word = br.readLine()) != null) {
            wordList.add(word);
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            br.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
    String[] words = new String[wordList.size()];
    wordList.toArray(words);
}

Ответы [ 2 ]

5 голосов
/ 28 января 2012

Создание объекта JTextArea.

Как и @Andrew предложил правильную функцию JTextArea.append (String)

JTextArea textArea = new JTextArea();

for(String W: Words)
  textArea.append(W);

Учебник по JTextArea Java Swing

2 голосов
/ 28 января 2012

Взгляните на это руководство, чтобы узнать, как использовать TextAreas.По сути, вы хотите сделать итерацию по массиву и распечатать его содержимое через поток диспетчера событий (поток, который заботится о графическом интерфейсе).Обычно это делается с помощью SwingUtils.invokeLater ()

...