android学习笔记--Socket编程

android 学习笔记--Socket 编程 Socket 编程
Socket 基本通信模型 使用基于 TCP 协议的 Socket 使用基于 UDP 协议的 Socket socket 套接字 用于描述 IP 地址和端口是一个通信链的句柄 以你公用程序通过 “套接字”向网络发出请求或者应答网络请求 UDP 协议:内部带目的地地址,不保证数据是否发送成功;一个数据包发送的数 据是有限的;速度快 TCP 协议: 要求接受方接收到数据给一个回应; 没有发送数据包数据大小的限制; 速度慢 outputSteam 输出流、inputStream 输入流 TCP 协议: 在服务器 socket 中设置 在线程中创建 serversocket :new ServerSocket(4567); 调用 serversocket 的 accept 方法接收客户端所发送的请求: Socket socket = serverSocket.accetp()(客户端没有发送数据,就一直阻塞; 如接收到数据,则返回 Socket 对象) 从 Socket 当中得到 InputStream 对象 InputStream inputStream = socket.getInputStream(); 利用 buffer 读取 InputStream 中客户端发送的数据 byte buffer[] = new byte[1024*4]; while((temp = inputStream.read(buffer)) != -1){ String s = new String(buffer,o,temp); } 关掉 serversocket:serversoket.close(); 客户端 socket 设置 new socket("服务器 IP 地址",端口号) 用 inputStream 读取硬盘文件、 socket 中得到 InputStream inputStream = new 从 FileInputStream("硬盘文件完整地址"); OutputStream outputStream = socket.getOutputStream(); //讲‘InputStream 当中取出数据,写入 OutputStream 中 while((int temp = inputStream.read(buffer))!= -1){ outputStream.write(buffer,0,temp);

} UDP 协议: 服务器设置 在线程中创建 DatagramSocket 对象 socket 并指定监听的端口号(0~65535): new DatagramSocket(4567) byte data[] = new byte[1024] 创建一个空的 DatagramPacket 对象:new DatagramPacket(data,data.length) 使用 receive 方法接收客户端所发送的数据 socket.receive(packet)(客户端没有发送数据,就一直阻塞)将接受的数据放 到 data 中 String result = new String(packet.getData(),packet.getOffset(),packet.getLenght()); 客户端设置 创建一个 DatagramSocket 对象 socket 创建一个 InetAddree 对象 serveraddress :指明发送到的目的地的地址 InetAddress serverAddress = InetAddress.getByName("服务器 IP 地址"); String str = "hello"; byte data[] = str.getBytes(); 创建一个 DatagramPacket 对象 length, serverAddress: 指定数据、 数据长度、 发送地址、端口号 DatagramPacket packet = new DatagramPacket(data,data.length, serverAddress,4567) 调用 Socket 对象的 sent 方法发送数据 socket.sent(packet) 注:new String(packet.getData(),packet.getOffset(),packet.getLenght()); 接收 packet 字节数组,设置字节量开始地址,设置接收字节的总长度


相关文档

Socket网络编程学习笔记
android学习笔记4--socket
Socket网络编程学习笔记(2)_面向连接的Socket
socket编程 android
Android Socket编程
Socket网络编程学习笔记2
Android的Socket编程实现
以聊天为例讲解关于Android_的socket编程
linux嵌入式Socket网络编程学习笔记
android之socket编程实例
电脑版