欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java实现socket从服务器连续获取消息的示例

程序员文章站 2024-02-26 15:08:58
服务器端我们用软件模拟,是一个很小巧的软件,下载软件netassist:http://xiazai.jb51.net/201403/tools/netassist(jb51...

服务器端我们用软件模拟,是一个很小巧的软件,下载软件netassist:http://xiazai.jb51.net/201403/tools/netassist(jb51.net).rar

java实现socket从服务器连续获取消息的示例

第二步贴上我们客户端的代码:

复制代码 代码如下:

import java.io.datainputstream;

import java.io.ioexception;
import java.net.socket;

public class client { 
    public static final string ip_addr = "192.168.3.65";//服务器地址  
    public static final int port = 8080;//服务器端口号   
    static string text = null;

 public static void main(string[] args) throws ioexception {   
        system.out.println("客户端启动...");
        socket socket = null; 
        socket = new socket(ip_addr, port);   
        while (true) {   
            try { 
                //创建一个流套接字并将其连接到指定主机上的指定端口号 
                //读取服务器端数据   
                datainputstream input = new datainputstream(socket.getinputstream());   

    byte[] buffer;
    buffer = new byte[input.available()];
    if(buffer.length != 0){
    system.out.println("length="+buffer.length);
    // 读取缓冲区
    input.read(buffer);
    // 转换字符串
    string three = new string(buffer);
    system.out.println("内容=" + three);
    }
            } catch (exception e) { 
                system.out.println("客户端异常:" + e.getmessage());  
            }
        }   
    }
}

可以看到打印结果如下:
length表示消息的长度

复制代码 代码如下:

客户端启动...
length=27
内容=//www.jb51.net

好了,一个socket客户端我们就完成了,这个是可以一直接收服务器发过来的消息的。