Java - > TCP - > node.js(字符串数据传输)

时间:2013-03-14 04:27:49

标签: java node.js sockets tcp

客户端(Java)

Socket tcpClient = new Socket("localhost", 6000); 
String msg ="test";
DataOutputStream os = new DataOutputStream(tcpClient.getOutputStream());
PrintWriter pw = new PrintWriter(os);
pw.println(msg);
pw.flush();

服务器(node.js JavaScript)

var net = require('net');
var server = net.createServer(function (c)
{ //'connection' listener
    log('Java client connected to this nodeServer');
    c.on('data', function (data)
    {
        console.log(data);   
    });
    c.on('end', function ()
    {
        console.log('nodeServer disconnected');
    });
});
server.listen(6000, function ()
{ //'listening' listener
    console.log('nodeServer listening port:6000');
});

结果

nodeServer listening port:6000

Java client connected to this nodeServer

<Buffer 74 65 73 74 0a>

连接成功,但很明显,我需要在Result中使用'test'字符串。

对于数据,到目前为止我使用String来简化我的问题,但是,能够传输任何对象是理想的。

也许,我需要使用JSON框架(非二进制对象)通过Java / TCP发送,但不确定。


PS。 这只需修改为

即可
 var data1 = data.toString('utf-8');
 console.log(data1); 

分享。

1 个答案:

答案 0 :(得分:1)

只需修改为

即可
 var data1 = data.toString('utf-8');
 console.log(data1); 

分享。