鼓捣了一天,一直有几个错误弄不对,只好来请教~!!!!!服务器import java.io.*;
import java.net.*;
public class MsgReceiver { static int receiverPort = 6666;
static ServerSocket welcomeSocket = null;
static Socket receiverSocket = null;
static ObjectInputStream inFromSender = null;
private BufferedReader getReader;
private PrintWriter getWriter; public static void main(String[] args) { if ( args.length == 1 )
receiverPort = Integer.parseInt(args[0]);
else {
printHelp();
return;
}
try {
// wait for a connection request from MsgSender
welcomeSocket = new ServerSocket(receiverPort); //server socket ready
System.out.println("Server ready!");
receiverSocket = welcomeSocket.accept();
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("Receiver: Server Socket Exception");
e.printStackTrace();
}
try {
receiverSocket=welcomeSocket.accept();
System.out.println("New connection accepted!");
// stream ready }
catch (IOException e) {
e.printStackTrace();
} while (true) { try {
BufferedReader br = new getReader(receiverSocket);// read from the socket stream
PrintWriter pw=getWriter(receiverSocket);// and print to the console }
catch (IOException e) {
//e.printStackTrace();
}
catch (ClassNotFoundException e) {
e.printStackTrace();
} }
}
private static void printHelp() {
System.err.println("MsgReceiver <receiver port>");
System.err.println("where <receiver port> is the port number at which MsgReceiver is listening");
}}
客户端
import java.io.*;
import java.net.*;public class MsgSender { static String receiverHost = "127.0.0.1";
static InetAddress receiverIP;
static int receiverPort = 0; static ObjectOutputStream outToReceiver;
static Socket senderSocket; public static void main(String[] args) { if( args.length == 2 ) {
receiverHost = args[0];
receiverPort = Integer.parseInt(args[1]);
}
else if ( args.length == 1 )
// MsgReceiver is at 'localhost'
receiverPort = Integer.parseInt(args[0]);
else {
printHelp();
return;
} try {
System.out.println("Try to Connect to 127.0.0.1:6666");
senderSocket = new Socket("127.0.0.1",6666); // Get the IPaddress of Receiver Host
System.out.println(" The server connected!"); }
catch (UnknownHostException uhe) {
System.err.println("unknown host: " + receiverHost);
return;
}
// connect a socket to the receiver
BufferedReader in;
PrintWriter out;
try {
in = new BufferedReader(new InputStreamReader(senderSocket.getInputStream()));
out = new PrintWriter(senderSocket.getOutputStream(), true); } catch (ConnectException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// set up a socket stream and keyin stream BufferedReader inFromUser ; try {
BufferedReader line = new BufferedReader(new InputStreamReader(System.in)); } catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
//clientSocket.close();
out.close();
in.close();
senderSocket.close();
}
while (true) { try { //out.println(inFromUser.readLine());//向服务端传送信息
OutputStream netOut = senderSocket.getOutputStream();
DataOutputStream doc = new DataOutputStream(netOut);
// and then send to the socket stream
} catch (UnknownHostException e) {
//e.printStackTrace();
} catch (IOException e) {
//e.printStackTrace();
break;
}
}
}
private static void printHelp() {
System.err.println("MsgSender [<receiver host>] <receiver port> ");
System.err.println("where <receiver port> is the port number at which MsgReceiver is listening");
System.err.println(" <receiver host> is the host name or IP address where MsgReceiver is running(default: localhost) ");
}}
import java.net.*;
public class MsgReceiver { static int receiverPort = 6666;
static ServerSocket welcomeSocket = null;
static Socket receiverSocket = null;
static ObjectInputStream inFromSender = null;
private BufferedReader getReader;
private PrintWriter getWriter; public static void main(String[] args) { if ( args.length == 1 )
receiverPort = Integer.parseInt(args[0]);
else {
printHelp();
return;
}
try {
// wait for a connection request from MsgSender
welcomeSocket = new ServerSocket(receiverPort); //server socket ready
System.out.println("Server ready!");
receiverSocket = welcomeSocket.accept();
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("Receiver: Server Socket Exception");
e.printStackTrace();
}
try {
receiverSocket=welcomeSocket.accept();
System.out.println("New connection accepted!");
// stream ready }
catch (IOException e) {
e.printStackTrace();
} while (true) { try {
BufferedReader br = new getReader(receiverSocket);// read from the socket stream
PrintWriter pw=getWriter(receiverSocket);// and print to the console }
catch (IOException e) {
//e.printStackTrace();
}
catch (ClassNotFoundException e) {
e.printStackTrace();
} }
}
private static void printHelp() {
System.err.println("MsgReceiver <receiver port>");
System.err.println("where <receiver port> is the port number at which MsgReceiver is listening");
}}
客户端
import java.io.*;
import java.net.*;public class MsgSender { static String receiverHost = "127.0.0.1";
static InetAddress receiverIP;
static int receiverPort = 0; static ObjectOutputStream outToReceiver;
static Socket senderSocket; public static void main(String[] args) { if( args.length == 2 ) {
receiverHost = args[0];
receiverPort = Integer.parseInt(args[1]);
}
else if ( args.length == 1 )
// MsgReceiver is at 'localhost'
receiverPort = Integer.parseInt(args[0]);
else {
printHelp();
return;
} try {
System.out.println("Try to Connect to 127.0.0.1:6666");
senderSocket = new Socket("127.0.0.1",6666); // Get the IPaddress of Receiver Host
System.out.println(" The server connected!"); }
catch (UnknownHostException uhe) {
System.err.println("unknown host: " + receiverHost);
return;
}
// connect a socket to the receiver
BufferedReader in;
PrintWriter out;
try {
in = new BufferedReader(new InputStreamReader(senderSocket.getInputStream()));
out = new PrintWriter(senderSocket.getOutputStream(), true); } catch (ConnectException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// set up a socket stream and keyin stream BufferedReader inFromUser ; try {
BufferedReader line = new BufferedReader(new InputStreamReader(System.in)); } catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
//clientSocket.close();
out.close();
in.close();
senderSocket.close();
}
while (true) { try { //out.println(inFromUser.readLine());//向服务端传送信息
OutputStream netOut = senderSocket.getOutputStream();
DataOutputStream doc = new DataOutputStream(netOut);
// and then send to the socket stream
} catch (UnknownHostException e) {
//e.printStackTrace();
} catch (IOException e) {
//e.printStackTrace();
break;
}
}
}
private static void printHelp() {
System.err.println("MsgSender [<receiver host>] <receiver port> ");
System.err.println("where <receiver port> is the port number at which MsgReceiver is listening");
System.err.println(" <receiver host> is the host name or IP address where MsgReceiver is running(default: localhost) ");
}}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货