我有这样的文本文件:
Jordan|Turner|jotu|12345|Department of Complaints|Belgrade|
Travis|Bickle|trabic|54321|Driving Department|Novi Sad|
像这样的代码:
package gui;
public class ReservationWindow extends JFrame {
private JComboBox cbDispatcher;
private JLabel lblDispatcherecer;
public ReservationWindow() {
setTitle("Reservations");
ImageIcon ikonica = new ImageIcon
(LoginProzor.class.getResource("/ikonice/faketaxi.png"));
setIconImage(ikonica.getImage());
setSize(400, 350);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setLocationRelativeTo(null);
setResizable(false);
initGUI();
initActions();
}
private void initActions() {
//here is everything fine :D
}
private void initGUI() {
MigLayout mig = new MigLayout("wrap 2", "[][]", "[]10[][]10[]");
setLayout(mig);
cbDispatcher = new JComboBox();
lblDispatcher = new JLabel("Dispatcher with whom you talked");
add(lblDispatcher);
add(cbDispatcher);
}
}
现在,如何用亚麻纤维的某些部分填充ComboBox?
(在这种情况下,第4部分-投诉和驾驶部)
最佳答案
如果您仅在文件中使用|
作为分隔符,那么我建议删除该值并将每个值保留在每行中,为简单起见,java 8读取文件的简单方法是:
List<String> list = new ArrayList<>();
try (Stream<String> stream = Files.lines(Paths.get(fileName))) {
list = stream.collect(Collectors.toList());
} catch (IOException e) {
e.printStackTrace();
}
因此,现在
list
将具有文件中的所有值。现在,您必须对其进行循环,然后使用JComboBox
将其添加到cbDispatcher.addItem(value)
。您可以使用stream.filter
进行过滤(读取文件的特定部分)并将其提供给JComboBox
关于java - Java-如何用txt文件的某些部分填充组合框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45911817/