if (arg0.getSource() == btnAdd) {
String number = txtIdSelect.getText();
System.out.println("number"+number);
if (number.trim().length() == 0 || number == null) {
String warning = "必须输入学号!";
JOptionPane.showMessageDialog(null, warning, "警告",
JOptionPane.WARNING_MESSAGE);
}else{
s1 = new String(txtName.getText() + ";" + txtId.getText() + ";"
+ txtAge.getText() + ";" + txtSex.getText() + ";"
+ txtMobile.getText() + ";" + txtHomeAddress.getText()
+ ";");
if (number.trim().length() > 0) {
try {
File file = new File("D:\\test.txt");
FileOutputStream fos = new FileOutputStream(file, true);
OutputStreamWriter osw = new OutputStreamWriter(fos);
BufferedWriter bw = new BufferedWriter(osw); if (s1.contains(number)) {
String warning = "该生信息已存在!";
JOptionPane.showMessageDialog(null, warning, "警告",
JOptionPane.WARNING_MESSAGE);
} else {
String m = "该生信息将被录入!";
int ok = JOptionPane.showConfirmDialog(null, m,
"确认", JOptionPane.YES_NO_OPTION,
JOptionPane.INFORMATION_MESSAGE);
if (ok == JOptionPane.YES_OPTION) {
bw.write(s1);
bw.newLine();
} bw.flush();
bw.close();
osw.close();
fos.close();
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e2) {
e2.printStackTrace();
} } 
}
}
上面代码是个录入按钮的实现
出现的问题是:我输入了学号 点击录入按钮 为什么会出现警告 必须输入学号
求高手解答!最好能改下代码,并注释下!

解决方案 »

  1.   

    代码看不出问题来,你这个录入按钮是在弹出窗口中的吗?
    是不是代码执行之前,txtIdSelect本身或者它所在的窗口就已经被销毁了?
      

  2.   

    System.out.println("number"+number);
    你这一行不是有一句调试语句吗,看看结果是多少?
      

  3.   

    System.out.println("number"+number); 这条语句输出结果是什么啊?
      

  4.   

    这代码别看了,写的不咋地:if (number.trim().length() == 0 || number == null)这个就让人看得郁闷了
      

  5.   

    number值取出来是什么?肯定是这个值影响了后边的执行
      

  6.   

    修改为这样试试:
    String number = txtIdSelect.getText(); 
    if(number==null) number="";
    if (number.trim().equals(""))
      

  7.   

    通过debug调试一下 就知道问题在那里了