一、客户端
package Ip;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.InetAddress;
import java.net.Socket;
public class iptest {
public static void main(String[] args) throws IOException {
// InetAddress ip=InetAddress.getLocalHost();
try {
System.out.println("机号:" + InetAddress.getLocalHost().getHostName());
System.out.println("ip地址为:"+ InetAddress.getLocalHost().getHostAddress());
Socket socket = new Socket("192.168.16.10", 8880);//此类实现客户端套接字(也可以就叫“套接字”)。套接字是两台机器间通信的端点。
OutputStream os = socket.getOutputStream();//返回此套接字的输出流。
PrintStream ps = new PrintStream(os);//PrintStream 为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式
String info = "我是本机1";
ps.write(info.getBytes());
socket.shutdownOutput();//禁用此套接字的输出流。
InputStream is = socket.getInputStream();//返回此套接字的输入流。
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String infop;
while ((infop = br.readLine()) != null) {
System.out.println(infop);
}
ps.close();
os.close();
socket.close();
System.out.println("发送完毕");
} catch (IOException e) {
e.printStackTrace();
}
}
}
二、服务端
package Ip;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
public class tet {
public static void main(String[] args) {
try {
ServerSocket server = new ServerSocket(8880);//此类实现服务器套接字
while (true) {
Socket socket = server.accept();//侦听并接受到此套接字的连接(必须要)。
InputStream is = socket.getInputStream();//返回此套接字的输入流。
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String info;
while ((info = br.readLine()) != null) {
System.out.println(info);
}
socket.shutdownInput();// 此套接字的输入流置于“流的末尾”。
OutputStream os = socket.getOutputStream();//返回此套接字的输出流。
PrintStream ps = new PrintStream(os);//PrintStream 为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式
String reStr = "别刷屏";
ps.write(reStr.getBytes());
ps.close();
os.close();
is.close();
server.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}