该楼层疑似违规已被系统折叠隐藏此楼查看此楼
这是我写的服务器端:
package jiaohu; import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import .ServerSocket;
import .Socket; public class Serverj implements Runnable{
ServerSocket server=null;
Socket play1=null;
Socket play2=null;
DataInputStream pI1=null;
DataOutputStream pO1=null;
DataInputStream pI2=null;
DataOutputStream pO2=null;
public Serverj(){
try{
server=new ServerSocket(6669);
System.out.println("创建连接");
play1=server.accept();
System.out.println("第一个用户连接上了");
pI1=new DataInputStream(play1.getInputStream());
pO1=new DataOutputStream(play1.getOutputStream());
play2=server.accept();
System.out.println("第二个用户连接上了");
pI2=new DataInputStream(play2.getInputStream());
pO2=new DataOutputStream(play2.getOutputStream());
}catch(Exception e){
System.out.println("创建失败");
}
}
public void run(){
while(true){
try {
int a=pI1.readInt();
int b=pI1.readInt();
int c=pI1.readInt();
System.out.println("接收结束");
pO2.writeInt(a);
pO2.writeInt(b);
pO2.writeInt(c);
int a1=pI2.readInt();
int b1=pI2.readInt();
System.out.println("接收结束");
pO1.writeInt(a1);
pO1.writeInt(b1);
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("没有输入");
e.printStackTrace();
}
}
}
public static void main(String[] args){
new Serverj();
new Thread(new Serverj()).start();
} }
这是我写的用户端
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import .Socket;
import .UnknownHostException;
import java.util.Scanner; public class Clientj implements Runnable {
Socket play=null;
DataInputStream in=null;
DataOutputStream out=null;
Clientj(){
try {
play=new Socket("192.168.1.13",6669);
in=new DataInputStream(play.getInputStream());
out=new DataOutputStream(play.getOutputStream());
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void run(){
while(true){
try {
if(in.readInt()==1){//表示接收数据
System.out.println("接收数据");
int a=in.readInt();
int b=in.readInt();
System.out.println(a+"+"+b);
}
//输出数据
System.out.println("请输入2个数据");
Scanner a1=new Scanner(System.in);
int a11=a1.nextInt();
int a12=a1.nextInt();
int a10=a1.nextInt();
out.writeInt(a10);
out.writeInt(a11);
out.writeInt(a12);
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("有错");
e.printStackTrace();
}
}
}
public static void main(String[] args){
new Clientj();
new Thread(new Clientj()).start();
} }
我就是想一个用户端发送两个数据,而在另一个客户端能接收到,并且在另一个客户端发送的数据,在这个客户端也能接收,我该怎么改,请高手指点一二,小弟感激不尽!