Fechar fluxo com socket

2 respostas
H

Olá,

Estou fazendo um socket se conectar um servidor pop3(a nivel de estudo), dai eu fiz a conexao, autentiquei, mas o while q eu criei para buscar os dados soh esta sendo finalizado qndo o tempo de conexao com o servidor pop se esgota, eu gostaria que o while finaliza-se assim que fosse lida a ultima linha

BufferedReader rd = new BufferedReader(new InputStreamReader(client.getInputStream()));
        	String str;
        	
        	StringBuffer buffer = new StringBuffer();
        	while ((str = rd.readLine()) != null) 
        	{
           		buffer.append(str);
        	}

Se alguem puder ajudar...

2 Respostas

J

Uma mensagem pop finaliza com uma linha contendo um unico ponto, tipow assim:

.

Procure por esse ponto para finalizar a leitura

saoj

“JeffersonFr”:
Uma mensagem pop finaliza com uma linha contendo um unico ponto, tipow assim:

.

Procure por esse ponto para finalizar a leitura

Esse ponto quem coloca é o cliente e não o servidor, certo? Então como ele é o cliente ele não tem que procurar pelo ponto.

Pode ser que eu esteja enganado, mas o seu problema aqui deve ser que o servidor não fecha a conexão, logo o null nunca vem. Deve ser responsabilidade do cliente encerrar a conexão.

Criado 25 de setembro de 2004
Ultima resposta 27 de set. de 2004
Respostas 2
Participantes 3