我实现了TCP网络通信,可该怎样发送接收文字或者文件呐?
1 回答
已采纳
weenhall
TA贡献121条经验 获得超57个赞
客户端和服务器端都设置收发机制啊,比如服务器收到消息后再发送一个消息给客户端,客户端接收这个消息
String host = "127.0.0.1"; // 要连接的服务端IP地址
int port = 8802; // 要连接的服务端对应的监听端口
// 与服务端建立连接
Socket client = new Socket(host, port);
// 建立连接后就可以往服务端写数据了
Writer writer = new OutputStreamWriter(client.getOutputStream(), "GBK");
writer.write("你好,服务端。");
writer.write("eof\n");
writer.flush();
// 写完以后进行读操作
BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream(), "UTF-8"));
// 设置超时间为10秒
client.setSoTimeout(10 * 1000);
StringBuffer sb = new StringBuffer();
String temp;
int index;
try {
while ((temp = br.readLine()) != null) {
if ((index = temp.indexOf("eof")) != -1) {
sb.append(temp.substring(0, index));
break;
}
sb.append(temp);
}
} catch (SocketTimeoutException e) {
System.out.println("数据读取超时。");
}
System.out.println("服务端: " + sb);
writer.close();
br.close();
client.close();客户端的自己照着做把
添加回答
举报
0/150
提交
取消
