2016-04-15 6 views
0

Привет всем Я новичок в java, и у меня возникают некоторые проблемы относительно того, почему я получаю исключение, не найденное в файле. Я просто пытаюсь заставить пользователя открыть файл с помощью jfilechooser, а затем напечатать текст ONE LINE в сообщении панели параметров. Любые идеи относительно того, что не так/что нужно исправить? СпасибоОшибка FileNotFound Exception

package synchro; 

import java.util.Scanner; 
import java.io.File; 
import java.io.FileNotFoundException; 
import javax.swing.JFileChooser; 
import javax.swing.JOptionPane; 

public class SynchroTest { 
    public static void main(String[] args){ 
    JFileChooser fileChooser = new JFileChooser(); 
     int returnValue = fileChooser.showOpenDialog(null); 
     if (returnValue == JFileChooser.APPROVE_OPTION) { 
      File selectedFile = fileChooser.getSelectedFile(); 
      System.out.println(selectedFile.getName()); 

     try{ 
     Scanner input = new Scanner(new File(selectedFile.getName())); 
     while(input.hasNext()){ 
     String line = input.nextLine(); 
     JOptionPane.showMessageDialog(null, "Input sentence:\n" + line); 
     } 

     }catch(FileNotFoundException e){ 
      System.out.println("File Not Found"); 
     } 
    } 
} 
} 
+0

Почему вы просто не используете - «Вход сканера = новый сканер (selectedFile);' –

+0

Я получаю сообщение об ошибке. –

+0

Какова была эта ошибка? –

ответ

1

Я не понимаю, почему вы идете по петлям.

File selectedFile = fileChooser.getSelectedFile(); дает объект File для файла, на который было нажата кнопка.

Просто используя Scanner input = new Scanner(selectedFile);, вы сможете проанализировать файл.

while(input.hasNext()) { 
    String line = input.nextLine(); 
    System.out.println(line); 
}