Transferência de dados via Sockets

6 respostas
_fs

Oi, boa tarde.

Estou fazendo comunicação de um cliente -> servidor via sockets. Os dados são transmitidos via Output InputStream.

Minha dúvida é: há como passar estes dados diretamente como um tipo de dado primitivo, string por exemplo?

Agradepados antecimentos. :mrgreen:

6 Respostas

smota

Ops … String não é tipo primitivo :shock: … é uma classe que você usa como um objeto 8)

Os tipos primitivos são aqueles que começa com letras minusculas ehehe (sei sei, apenas uma convenção) … double, float, int, char, byte … isso sim é prmitivo (não tem métodos, lembra?)

E respondendo … não não tem jeito … na verdade vc faz um metodo de leitura e ele te retorna um objeto (String por exemplo) do modo que vc quer, mas vc tem que montar o objeto na medida que for lendo do socket.

[]s

_fs

hehe me desculpe pela heresia hehe

Então, me esclareça uma coisa por favor: qual a diferença entre esses dois códigos?

BufferedReader br = new BufferedReader(new InputStreamReader(aConnection.getInputStream() ) ); PrintWriter pw = new PrintWriter(aConnection.getOutputStream() );

ObjectOutputStream output = new ObjectOutputStream( connection.getOutputStream() ); ObjectInputStream input = new ObjectInputStream( skt.getInputStream() );

J

“LIPE”:
Oi, boa tarde.

Estou fazendo comunicação de um cliente -> servidor via sockets. Os dados são transmitidos via Output InputStream.

Minha dúvida é: há como passar estes dados diretamente como um tipo de dado primitivo, string por exemplo?

Agradepados antecimentos. :mrgreen:

Cara, eu to desenvolvendo uma aplicação parecida…

Tem como vc me mandar o código fonte pra mim?? é que eu sou iniciante em java…

Se vc puder eis aki o meu email: [email removido]

Valew

smota

Hummm tá desculpado, mas que isso nao se repita!!! :microwave:

ehehe

vou tentar ajudar.

“LIPE”:
BufferedReader br = new BufferedReader(new InputStreamReader(aConnection.getInputStream() ) ); PrintWriter pw = new PrintWriter(aConnection.getOutputStream() );

ObjectOutputStream output = new ObjectOutputStream( connection.getOutputStream() ); ObjectInputStream input = new ObjectInputStream( skt.getInputStream() );

Talvez eu fale besteira, por isso nao acredite em mim, vá ver se to certo :lol:

O segundo código permite vc transferir OBJETOS (serializáveis) e reconstituilos e o primeiro serve apenas para texto …

Ambos é claro abrem um stream de leitura e outro de escrita, a diferença está no tipo do stream.

_fs

Valeu smota!

Como dizem “uma resposta gera mais duvidas” … então … hehe

Considerando que eu só preciso receber texto, é mais barato( em termos de processamento ) usar uffer, certo?

E jaoliveira, o código não ta funcionando muito legal não cara … assim que estiver rodando beleza eu tento te dar uma luz, ok? Por enquanto, por que você não posta sua dúvida?

black_fire

Kra, já tive alguns problemas com soket, tem um post aki no Guj. Dá uma olhada lá, derrepente ajuda.

http://www.guj.com.br/forum/viewtopic.php?p=21917#21917

Um abaraço

Criado 22 de setembro de 2003
Ultima resposta 22 de set. de 2003
Respostas 6
Participantes 4