Como transformar um .txt em String e colocar em um JComboBox?

Eu possuo um código que salva os dados inseridos em arquivo .txt, como posso fazer para um JComboBox ler esse arquivo separando as linhas ?

Isso pode ajudar: (faz um tempinho q nao pego em Java)

    private List<String> readFile(File file) {
        List<String> lines = new ArrayList<>();
        try {
            BufferedReader br = new BufferedReader(new FileReader(file));
            String line;
            while ((line = br.readLine()) != null) {
                lines.add(line);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

        return lines;
    }

    private void fillComboBox() {
        File file = new File("seu_arquivo.txt");
        List<String> lines = readFile(file);
        for (String line : lines) {
            seuComboBox.addItem(line);
        }
    }
1 curtida

Outro exemplo usando a “nova” API:

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.List;

import javax.swing.JComboBox;
import javax.swing.JFrame;

class Program {
  public static void main(String... args) throws IOException {
    List<String> lines = Files.readAllLines(Path.of("dados.txt"));

    JComboBox<String> comboBox = new JComboBox<>(lines.toArray(String[]::new));

    JFrame frame = new JFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.add(comboBox);
    frame.setSize(300, 300);
    frame.setVisible(true);
  }
}

Este é o conteúdo de dados.txt:

aaa
bbb
ccc
ddd
3 curtidas

pô que top, nao conhecia o readAllLines, é um adianto gigante

1 curtida