BufferedReader sem \n

ola pessoal estou desenvolvendo um server socket esta funcionado perfeitamente.

mas fiz todos os testes com clientes mancando \n no termino da string.
recebi os dados perfeitamente

como estou substituindo um programa em producao existem clientes que nao me enviam \n o que torna o metodo readLine ineficiente no meu caso pois ele necessita de \n para identificar fim de string e me enviar o retorno para minha variavel

como faco para ler por exemplo 10 caracteres???

codigo usado

			entradaData = new BufferedReader(new InputStreamReader(socketIn.getInputStream()));

			String auxIn = entradaData.readLine();//ele nao retorna enquanto nao tiver \n
			System.out.println("dados digitado foi:"+ auxIn);

E qual é o formato dos dados do seu programa em produção, amigo? Você deveria ter averiguado isso antes, para ver qual é o método mais eficiente de ler os dados.

ele me manda sempre 200 caracteres com letras e numeros
a parte do tratamento do layout esta toda implementada

exemplo string
342321312william43423423423sao paulo

mas ele nao manda o \n
a parte do tratamento esta pronta que pega a string trata e gera um bean

fiz um software para teste da aplicacao mas nao tinha me deparado com a situcacao
do cliente nao enviar \n

o software em producao foi desenvolvido em delphi e esta sendo migrada para java

pelo que andei olhando no fonte do delphi ele pega caracter por caracter do socket e vai concatenando numa string.

estou procurando como fazer isso em java pegar cada caracter do BufferedReader ou de qualquer outro modo???

att
william

Ora, amigo, em vez de usar readLine, veja a API que você vai ver uma maneira de puxar exatamente 200 caracteres.

read

Basicamente você cria um array de 200 caracteres, lê com read, e então transforma esses 200 caracteres em uma String, usando o seguinte construtor de String: String s = new [url=http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html#String(char%5B%5D,%20int,%20int)]String/url

vc quer fazer a quebra de linha?
tente mandar como tag html <‘br’>

era isso:/?

muito obrigado consegui resolver com sua dica

			entradaData = new BufferedReader(new InputStreamReader(socketIn.getInputStream()));
			char[] dadosin = new char[10];
			int teste = entradaData.read(dadosin,0,10);
			System.out.println("teste de dados : "+teste);
			String auxIn =new String(dadosin);  
			System.out.println("digitado foi:"+ auxIn);

na variavel teste ira retornar quantos caracteres foi enviado pelo usuario

exemplo se ele me mandou uma string com apenas 3 caracteres ele ira gerar uma matriz com apenas trez caracteres do tipo char

depois converto o char em string quando jogo o char no construtor da string

att
valew pela ajuda
william