初始版本:
服务端:
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Text {
public static void main(String[] args) {
byte[] date = new byte[128];
try {
ServerSocket socket = new ServerSocket(8989);
System.out.println("创建成功,等待连接");
Socket con = socket.accept();
System.out.println("连接成功");
//读取数据
InputStream in = con.getInputStream();
int len = in.read(date);
//输出读取的数据
String str = new String(date,0,len);
System.out.println(str);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
客户端:
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class Client {
public static void main(String[] args) {
try {
//发起连接申请
Socket client = new Socket("10.15.134.213",8989);
//发送数据
OutputStream out = client.getOutputStream();
String date ="form to client";
out.write(date.getBytes());
System.out.println("发送成功");
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
进阶版本:
服务端:
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class Text {
public static void main(String[] args) {
final byte[] date_R = new byte[128];
try {
ServerSocket socket = new ServerSocket(8989);
System.out.println("创建成功,等待连接");
while(true){
final Socket con = socket.accept();
System.out.println("连接成功");
//创建线程读取数据
new Thread(new Runnable() {
public void run() {
try {
//读取数据
InputStream in = con.getInputStream();
int len = in.read(date_R);
//输出读取的数据
String str = new String(date_R,0,len);
System.out.println(str);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}).start();
//创建线程发送数据
new Thread(new Runnable() {
public void run() {
try {
OutputStream out = con.getOutputStream();
System.out.println("请输入数据:");
Scanner sc = new Scanner(System.in);
String date_W = sc.next();
//发送数据
out.write(date_W.getBytes());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}).start();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
客户端:
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;
public class Client {
public static void main(String[] args) {
try {
//发起连接申请
final Socket client = new Socket("10.15.134.213",8989);
//创建线程发送数据
new Thread(new Runnable() {
public void run() {
try {
OutputStream out = client.getOutputStream();
System.out.println("请输入数据");
Scanner sc = new Scanner(System.in);
String date_W =sc.next();
//发送数据
out.write(date_W.getBytes());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}).start();
//创建线程读取数据
new Thread(new Runnable() {
public void run() {
try {
//读取数据
InputStream in = client.getInputStream();
byte[] date_R = new byte[128];
int len = in.read(date_R);
//输出读取到的内容
String str = new String(date_R,0,len);
System.out.println(str);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}).start();
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}