2014-03-14 49 views
0

下面的代碼是在簡單表單上單擊按鈕時採取的操作。問題來自一個if/else塊。 If行不會被終止。 Else行不會被終止。但我有一個一致的錯誤,我的Else存在沒有一個If。我看不出爲什麼。我需要比我更聰明的人來確定這裏發生了什麼。否則如果錯誤...並且我不知道爲什麼

預先感謝您!

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           

     FileFilter filter; 
     filter = new FileNameExtensionFilter("Comma Separated Value files","csv","txt"); 
     JFileChooser chooser; 
     chooser = new JFileChooser(); 
     chooser.addChoosableFileFilter(filter); 
     chooser.setFileSelectionMode(JFileChooser.FILES_ONLY); 
     int showDialog = chooser.showDialog(this, null); 
     File selectedFile = chooser.getSelectedFile(); 
     String filename; 
     filename = selectedFile.getAbsolutePath(); 
     if (filter.accept(selectedFile)) 
     { 
      jTextField2.setText(filename); 
      jTextField2.setBackground(Color.white); 
     else 
      jTextField2.setText("You Did NOT Select a CSV File."); 
      jTextField2.setForeground(Color.black); 
      jTextField2.setBackground(Color.red); 
     } 

}           

回答

1

您需要關閉「如果」「其他」塊。例如:if {} else {}

if (filter.accept(selectedFile)) { 
    jTextField2.setText(filename); 
    jTextField2.setBackground(Color.white); 
} else { 
    jTextField2.setText("You Did NOT Select a CSV File."); 
    jTextField2.setForeground(Color.black); 
    jTextField2.setBackground(Color.red); 
} 
2

您在「jTextField2.setBackground(Color.white);」之後缺少括號'}'和別的。 code is here

if (filter.accept(selectedFile)) 
{ 
     jTextField2.setText(filename); 
     jTextField2.setBackground(Color.white); 
} 
else 
{ 
     jTextField2.setText("You Did NOT Select a CSV File."); 
     jTextField2.setForeground(Color.black); 
     jTextField2.setBackground(Color.red); 
} 
1

SYNTAXif-else塊看起來是這樣的: -

if { 
    // statements 
} else { 
    //statements 
} 

現在,如果你擁有的是if Or else部分內只有ONE聲明,那麼你可以買得起跳過捲曲大括號{}否則,當編譯器查找它可以終止if語句的執行時,您肯定需要將這些大括號放在花括號中。 但是,即使您在if or else部分中只有一條語句,也總是建議使用大括號,因爲它可以提高代碼的可讀性。

0

if的右括號在else之前丟失。

相關問題