Identificar dado enviado para o Socket

5 respostas
Norivan

Prezado,

Boa tarde a todos, estou criando um socket pela primeira vez… preciso que cliente e servidor entrem em comunicação, mas não estou conseguindo achar uma forma de identificar estes dados transferidos.

Exemplificando seria mais ou menos isso:

cliente

PrintStream cliente_saida = new PrintStream(cliente_socket.getOutputStream());
cliente_saida.println("_MSG_:"mesagem+"_IP_:"ip);

servidor

entrada = new BufferedReader(new InputStreamReader(socket
					.getInputStream()));

			// Le 
			acao = entrada.readLine();
			
			if(acao.equals("_MSG_"))
				String mensagem = entrada.readLine();

Como eu faço para dividir as informações?

5 Respostas

proteus_adi

Poderia separar os pacontes antes de enviar…

OUUU
Poderia usar um split() da string pelo delimitador :

mensagem[] = entrada.readLine().split(":"); acao = mensagem[0]; if(acao.equals("_MSG_"))

Norivan

Boa… neste caso a varriavel seria de que tipo? (sou novato…)

tentei isso String Lista [] = new String[10]; String Lista [] = entrada.readLine().split("-:-");

Mas não deu certo…

proteus_adi

mil perdões…

String mensagem[] = entrada.readLine().split("\\:");

Padrões… Padrões… Padrões…

Norivan

Opá, obrigado pela ajuda proteus, deu certinho aqui :smiley:

proteus_adi

Isso tá parecendo coisa do trabalho do Cristiano, Professor de redes do UniBH…
Hehehe,
Daqui a alguns dias vou ter q fazer isso dai…
Fazer um Chat

Criado 16 de setembro de 2008
Ultima resposta 17 de set. de 2008
Respostas 5
Participantes 2