2015-12-28 4 views
-2
public class FileIO { 
    public static BinaryTree Level1; 
    public static BinaryTree Level2; 
    static BinaryTree Level3; 
    static BinaryTree Val; 

    public FileIO() { 
     Level1 = new BinaryTree(); 
     Level2 = new BinaryTree(); 
     Level3 = new BinaryTree(); 
     Val = new BinaryTree(); 
    } 

    public static void Refill() throws FileNotFoundException { 
     Scanner Lev1 = new Scanner (new File ("C:\\Users\\Shandana\\Documents\\NetBeansProjects\\ScrambledWords\\Level1.txt")); 
     Scanner input1 = new Scanner (new File ("C:\\Users\\Shandana\\Documents\\NetBeansProjects\\ScrambledWords\\Level1 Dictionary.txt")); 

     while (Lev1.hasNextLine() && input1.hasNextLine()) { 
      Level1.Insert(Lev1.nextLine(), input1.nextLine()); 
     } 

     Lev1.close(); 
     input1.close(); 
    } 
} 

Этот код показывает nullpointerexception() при попытке вставить слова из файла в двоичное дерево. Он работает абсолютно нормально, если я не использую цикл, но без цикла он не будет работать до конца файла.Ошибка при чтении Файл с использованием цикла

Может кто-то, пожалуйста, помогите мне понять, почему возникает эта ошибка и как ее разрешить.

+1

удалить статический модификатор из метода Refill и проверить его снова ... или сделать все, static (также конструктор Level1 или вы не делаете ....) –

+0

Я скопировал тот же код в главном и чем запустил его, но он все еще не работал. Но я все еще пытался сделать это без статичности, и это дало мне больше ошибок:/ –

+1

показать нам stackTrace –

ответ

0

Вам необходимо удалить статику из метода, а также переменные-члены.

public static void Refill() throws FileNotFoundException изменение public void Refill() throws FileNotFoundException

Затем вызовите этот метод new FileIO().Refill()

Я также бы

if(Lev1!=null&&input1!=null) { 
    while (Lev1.hasNextLine() && input1.hasNextLine()) { 
     Level1.Insert(Lev1.nextLine(), input1.nextLine()); 
    } 
} 
if(Lev1!=null) { 
    Lev1.close(); 
} 

if(input1!=null) { 
    input1.close(); 
} 
+0

Это дало мне исключение из allagal штата –

+0

Где? Удалите все статические, что у вас есть в этом классе IOFile. – StackFlowed

+0

Я сделал ... Он говорит, что сканер закрыт –

Смежные вопросы