聊天程序的一些注意事项

原创 2015年07月07日 13:49:33

Socket:套接字 插座 插槽

说明socket既能发送又能接收


分为两点:

1 调试的时候可以使用start命令再开一个控制台窗口 保留了原来的设置 很方便

2 思路要清晰 发送方(设置位置信息 设置信息输入方式 打包 发送 关闭资源)

接收方(设置监听端口 设置接受信息的对象 显示接收到的信息)


/*
需求:
聊天s


*/

//有net的地方一般都有io
import java.io.*;
import java.net.*;


class UDPSend2
{
public static void main(String[] args) throws UnknownHostException, IOException
{
DatagramSocket ds = new DatagramSocket();
//键盘输入 背也要背下来

//其实就是用缓冲区读取默认系统输入 而系统输入是键盘 需要转换一次
BufferedReader bufr = 
new BufferedReader(new InputStreamReader(System.in));


String line = null;


while ((line = bufr.readLine())!=null)
{//设定结束标记
if ("886".equals(line))
{
break;
}


byte[] buf = line.getBytes();

//设定发出方的位置(名称/ip 端口)
//DatagramPacket(byte[] buf, int length, InetAddress address, int port) 
DatagramPacket dp = 
new DatagramPacket(buf, buf.length, InetAddress.getByName("S10-M"), 10086);

//发送
ds.send(dp);
}

//别忘了关闭资源
ds.close();
}


public static void sopln(Object obj)
{
System.out.println(obj);
}
}




class UDPReceive2
{
public static void main(String[] args) throws UnknownHostException, IOException
{

//接收方需要监听相对应的端口
DatagramSocket ds = new DatagramSocket(10086);


while (true)
{
byte[] buf = new byte[1024];
//byte[] buf, int offset, int length) 
//给发过来的包找个放的地方

DatagramPacket dp = 
new DatagramPacket(buf, 0 ,buf.length);


ds.receive(dp);

//把对方的地址信息和数据信息分别读取出来
String data = new String(dp.getData(),0, dp.getLength());
String address = dp.getAddress().getHostName();
int port = dp.getPort();


sopln(address+":"+data+port);
}


// ds.close(); 老师就不关闭了
}


public static void sopln(Object obj)
{
System.out.println(obj);
}
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

[小项目]-netty实现聊天功能

Netty是一个Java的NIO客户端服务端框架可以快速的开发网络应用程序,比如客户端和服务端的协议,大大简化了网络程序的开发过程。我们知道Netty的整体架构主要由3部分组成:缓冲(buffer)、...
  • u010853261
  • u010853261
  • 2017年01月12日 19:14
  • 2375

18. JAVA 图形界面 Part 2(JTextComponent、事件处理、单选按钮、复选框、列表框、下拉列表框、菜单组件、文件选择) ----- 学习笔记

18.9 文本组件: JTextComponent        各个软件系统中都存在文本
  • forfan06
  • forfan06
  • 2014年10月28日 09:49
  • 2361

一个程序员的总结——开发注意事项

一年到头了,作为本命年的我,今年发生了太多的事情,但是不幸的是,都是好事儿,有点太过得意洋洋了,不过,不管一年顺抑或不顺,都是需要总结的,毕竟,总结,才能让人成长,首先,想注意的事情就是开发注意事项。...
  • laner0515
  • laner0515
  • 2015年02月25日 19:04
  • 5115

三星4300打印机清零程序及破解注意事项

  • 2015年10月19日 17:59
  • 1.89MB
  • 下载

会计交接工作程序及注意事项

  • 2009年07月04日 15:25
  • 5KB
  • 下载

Java程序基础学习注意事项总结

  • 2013年01月30日 16:51
  • 64KB
  • 下载

MYSQL到ORACLE程序迁移的注意事项

  • 2010年12月09日 10:00
  • 24KB
  • 下载

DOM2级处理程序注意事项

  • 2016年02月21日 16:05
  • 662B
  • 下载

MapX应用程序发布和打包过程及注意事项详解

  • 2015年04月16日 10:51
  • 6KB
  • 下载

涉及计算机程序的发明专利申请注意事项

  • 2009年03月17日 19:32
  • 27KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:聊天程序的一些注意事项
举报原因:
原因补充:

(最多只允许输入30个字)