Como achar o fim do arquivo?

Estou lendo um arquivo Excel usando a api JXL que achei muito facil de usar e bastante prática. No entanto estou precisando ler um arquivo e quando termina o arquivo ele me retorna a mesagem de erro que eu coloco no catch.

Eu queria saber se tem e como faço para saber quando chega o fim do arquivo, que assim eu saio do loop e evito a mensagem do erro.

Aqui vai o código

[code]package integra;

import javax.swing.;
import jxl.
;
import java.io.File;

public class conexaoExcel {

public void buscaDados() {
        
        try{
            Workbook wb = Workbook.getWorkbook(new File("c:\teste.xls"));
            
            Sheet sh = wb.getSheet(0);
            
            int i = 1;
            
            while(i > 0) /////AQUI DEVE ENTRAR A CONDIÇÃO DO FIM DE ARQUIVO PARA SAIR DO LOOP
            {
                Cell a1 = sh.getCell(4,i);
                String stringA1 = a1.getContents();
                System.out.println(i + " - " + stringA1);
                i++;
            }
            wb.close(); 
        }
        catch (Exception e)
        {
            System.out.println("Não foi possível realizar a conexão");
        }
    }

}[/code]

Desde já agradeço.

Procure na documentação das classes de leitura de arquivos fileinputstream para ler, e fileoutputstream para gravar, existe tbm a classe scanner que parece que é melhor que as outras duas.

Veja pelos métodos length, ou eof. não sei se são esses

while ( i < sh.getRows() ) {
.
.
}

//pega o número de linhas do seu arquivo .xls