Java 为JComboBox使用字符串数组

Java 为JComboBox使用字符串数组,java,jcombobox,Java,Jcombobox,我必须有一个下拉列表中的所有经常帐户在这个帐户经理项目,我一直在工作。我一直在尝试使用这个JComboBox,它可以很好地处理硬编码的字符串数组,但是当我从文件中读入并将其放入数组中时,它就不起作用了。我已经测试过阵列中是否有任何东西,并且没有 FileReader file = new FileReader("data"); BufferedReader reader = new BufferedReader(file); String line; int num_lines = 0; wh

我必须有一个下拉列表中的所有经常帐户在这个帐户经理项目,我一直在工作。我一直在尝试使用这个JComboBox,它可以很好地处理硬编码的字符串数组,但是当我从文件中读入并将其放入数组中时,它就不起作用了。我已经测试过阵列中是否有任何东西,并且没有

FileReader file = new FileReader("data");
BufferedReader reader = new BufferedReader(file);

String line;
int num_lines = 0;
while((line = reader.readLine()) != null)
{
num_lines++;
}

String [] accountData = new String[num_lines];

for(int i = 0; i < num_lines; i++)
{
accountData[i] = reader.readLine();
}


JComboBox comboBox = new JComboBox(accountData);
FileReader file=newfilereader(“数据”);
BufferedReader reader=新的BufferedReader(文件);
弦线;
int num_行=0;
而((line=reader.readLine())!=null)
{
num_lines++;
}
String[]accountData=新字符串[num_行];
对于(int i=0;i
试试这个伴侣:

FileReader file = new FileReader("data");
BufferedReader reader = new BufferedReader(file);
JComboBox comboBox = new JComboBox();
String line;
int num_lines = 0;
while((line = reader.readLine()) != null)
{
  num_lines++;
}

String [] accountData = new String[num_lines];

for(int i = 0; i < num_lines; i++){
  accountData[i] = reader.readLine();
  comboBox.addItem(accountData[i]);
}
FileReader file=newfilereader(“数据”);
BufferedReader reader=新的BufferedReader(文件);
JComboBox comboBox=新的JComboBox();
弦线;
int num_行=0;
而((line=reader.readLine())!=null)
{
num_lines++;
}
String[]accountData=新字符串[num_行];
对于(int i=0;i
那么您读取所有行以获得有多少行的计数,然后继续读取以获得实际数据?这对你有意义吗?这对我来说当然不重要!但随后我将其分配给array accountData,并在我的JComboBox中使用它,至少我认为这就是我正在做的事情?对不起,我对Java非常陌生,我一直在使用Window builder,然后开始编写额外的代码。但是我正在读取一个txt文件。在再次读取之前,您必须重置读卡器,目前在执行第二个循环之前,它处于EOF。最好使用某种类型的
列表
,您分配给
账户数据的是什么
reader.readLine()
返回了
null
,因此它不会;I don’我没有任何数据给你——你已经看到并扔掉了那些数据。