Ler arquivo somente até determinada posição?

Pessoal, estou utilizando este trecho de código para ler determinado arquivo:

[code]try{
reader = new FileReader(“C:\arquivo.txt”);
leitor = new BufferedReader(reader);

					String linha = null;
					String valor = tFilial.getText();
					//System.out.println("Valor antes de entrar no While:" + valor);
					while((linha = leitor.readLine())!= null){
						//System.out.println("Dentro do While VALOR-> " + valor);
						//System.out.println("Dentro do While LINHA-> " + linha);
						if(linha == valor){
							System.out.println("Linha: " + linha);
						}else{
							linha = null;
						}
					}
				}catch (IOException ex) {			               
		            ex.printStackTrace();
		            System.out.println("Erro no Exception EX");
		        }finally{   
		            try {   
		                leitor.close();   
		                reader.close();   
		            } catch (IOException ey) {   
		            	ey.printStackTrace();
		            	System.out.println("Erro no Exception EY");
		            }[/code]

Meu arquivo tem os campos separados por ‘;’ :

01;QQQQQQQQQQQQ;AAAAAAAAAAAAAA
03;AAAAAAAAAAAAA;BBBBBBBBBBBBBB

Como podem ver no código eu pego o conteúdo de um JText deste primeiro campo.
Como limito no código para ele ler somente até o primeiro ‘;’ por exemplo e se não for o que peguei do JText ir para linha debaixo?
E claro para os outros campos como começar do’;’ que eu quero (no meio da linha) e fazer a mesma coisa, se não for o que o usuario digitou no Jtext pular para linha debaixo até o final do arquivo.

Obrigado! 8)

Leia a linha inteira, e a separe em campos. No seu caso é simples porque você pode usar “split”.