为了账号安全,请及时绑定邮箱和手机立即绑定

网络通信实现简单的聊天室程序

网络通信实现简单的聊天室程序

淡泊如风 2016-09-08 13:21:15
我实现了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();

客户端的自己照着做把

查看完整回答
1 反对 回复 2016-09-08
  • 1 回答
  • 3 关注
  • 1269 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信