Java send floatbuffer over a tcp socket efficiently -


i relatively new socket programming in java , want send data floatbuffer variable on tcp socket. should run on android platform.

here's code illustrate want do:

floatbuffer buf = floatbuffer.allocate(4); buf.put(5.5f); buf.put(1.5f); buf.put(2.5f); buf.put(3.5f);  serversocket server = new serversocket(38300); con = server.accept();  // somehow send whole buf variable on tcp socket 

i sure can extract each float , individually send them on socket, wonder if there more efficient way so?

how creating backing bytebuffer it. way have plenty of choices on how transmit data on network. socketchannel you'll simple this.

bytebuffer buf = bytebuffer.allocate(floats*4); floatbuffer floats = buf.asfloatbuffer(); floats.put(5.5f); ... serversocket server = new serversocket(38300); socketchannel sc = server.accept().getchannel(); sc.write(buf); 

Comments