我正在尝试从vetrx 3.4.2中的netSocketClient接收un文件,这是我的代码:
NetServerOptions options = new NetServerOptions().setPort(10000);
NetServer netserver = vertx.createNetServer(options);
netserver.connectHandler(sock -> {
System.out.println("Incoming connection!");
sock.handler(buffer-> {
String dd = buffer.getString(0,buffer.length());
System.out.println("new Buffer: "+dd);
sock.write("From serveur: "+buffer.getString(0, buffer.length()));
});
sock.closeHandler(v -> {
System.out.println("The socket has been closed");
});
}).listen();
但是我收到了一个被修饰的缓冲区。
我的问题是如何在单个缓冲区中获取文件的结束缓冲区?
有人可以帮助我吗?
答案 0 :(得分:0)
我试试这个并且它正在工作:
StringBuffer buff = new StringBuffer();
sock.handler(buffer-> {
String dd = buffer.getString(0,buffer.length());
if(dd.contains("EOT")){
dd = dd.replace("EOT", "");
buff.append(dd);
}else{
buff.append(dd);
}
});