Czytanie pliku tekstowego w java - dlaczego pomija linie?

Jestem tu nowy i walczę z próbą odczytania pliku tekstowego. Na każdej linii znajduje się słowo i odpowiedni kod numeryczny. Chodzi o to, aby go przeczytać i umieścić kod i słowo w osobnych zmiennych. Nie wiem zbyt wiele o tym obszarze, ale rozglądałem się po Internecie i wymyśliłem następujące:

try{
    FileReader freader=new FileReader(f); 
    BufferedReader inFile=new BufferedReader(freader);
    while (inFile.readLine()!=null){
       String s=null;
       s=inFile.readLine();
       System.out.println(s);
               String[] tokens=s.split(" ");
       string=tokens[0];
       System.out.println(string);
       code=tokens[1];
       System.out.println(code);
       c.insert(string, code);
    }//end outer while
}//end try

Problem polega na tym, że pierwsza linia pliku tekstowego nie jest odczytywana. A potem za każdym razem pomija linię! (Innymi słowy czytane są tylko linie 1, 3, 5, 7 itd.)

Jak już wspomniałem powyżej, jestem nowy i nie wiem zbyt wiele o wszystkich różnych rzeczach, które widziałem w różnych witrynach internetowych (np. Dlaczego wszystko jest buforowane lub buforowane, lub jak właściwie używać wszystkich rzeczy tokenizera). Próbowałem kilku różnych rzeczy w różnym czasie i skończyło się na tym.

questionAnswers(2)

yourAnswerToTheQuestion