Bom dia, caros colegas deste Forum.
Estava estudando como gravar e ler um arquivo de texto. Consegui gravar as informações, mas agora estou tendo dificuldade em como ler esse arquivo. Aqui segue o código completo, com as classes. A Classe LerAluno está incompleta, justamente porque não sei bem o que fazer nesse código. O Interessante não é só escrever, é entender.
Agradeço a ajuda. 
//Aqui temos a classe Aluno
/**
* @author Armando
*/
class Aluno {
String pNome;
String uNome;
int pontos;
Aluno(){
this("","",0);
}
Aluno(String pNomeAluno,String uNomeAluno, int pontosAluno){
pNome = pNomeAluno;
uNome = uNomeAluno;
pontos = pontosAluno;
}
}
import java.io.*;
import javax.swing.*;
public class GravaAluno {
public static void gravar() throws IOException{
Aluno[] aluno = new Aluno[3];
int i;
String nomeArq = "ArquivoAluno.txt";
BufferedWriter bw = new BufferedWriter(new FileWriter(nomeArq));
for(i=0;i<3;i++) aluno[i]=new Aluno();
for (i=0;i<3;i++){
aluno[i].pNome = JOptionPane.
showInputDialog(null,"Digite o primeiro NOME: ");
bw.write(aluno[i].pNome);
bw.newLine();
aluno[i].uNome = JOptionPane.
showInputDialog(null,"Digite o SEGUNDO NOME: ");
bw.write(aluno[i].uNome);
bw.newLine();
aluno[i].pontos = Integer.parseInt(JOptionPane.
showInputDialog(null,"Digite os PONTOS: "));
bw.write(aluno[i].pontos);
bw.newLine();
}
for(i=0;i<3;i++){
System.out.println(aluno[i].pNome + " "
+ aluno[i].uNome + " "
+ aluno[i].pontos);
}
bw.close();
System.exit(0);
}
}
// ESTA CLASSE QUE NÃO FUNCIONA COMO DEVE SER
import java.io.*;
public class LerAluno {
public static void ler() throws IOException{
Aluno[] aluno = new Aluno[3];
BufferedReader bif =
new BufferedReader(new FileReader("ArquivoAluno.txt"));
int i=0;
for(i=0;i<3;i++) aluno[i]=new Aluno();
i=0;
while(bif.readLine()==null){
bif.readLine();
System.out.println(aluno[i].pNome);
bif.readLine();
System.out.println(aluno[i].uNome);
bif.readLine();
System.out.println(aluno[i].pontos);
i++;
}
bif.close();
System.exit(0);
}
}
// Programa Principal
import java.io.IOException;
import javax.swing.JOptionPane;
public class TestaDados {
public static void main(String args[]) throws IOException{
int resp = JOptionPane.showConfirmDialog(null,"Deseja GRAVAR o Arquivo - YES \n"
+ "NO - Deseja LER no Arquivo", "ATENÇÃO",1);
if (resp==1){
LerAluno.ler();
}else{
GravaAluno.gravar();
}
}
}