编写客户机类Java 程序 // Client。java import java。io。*; import java。net。*; public class Client extends { public static final int Default_Port = 6543; // 定义出错例程 public static final void usage() { System。
out。println("Usage: Java Client []"); System。exit(0); } public static void main(String args[]) { int port = Default_Port; Socket s = null; // 解析端口参数 if ((args。
length != 1)&&(args。length != 2 )) usage(); if (args。length == 1) port = Default_Port; else { try port = Integer。
parseInt(args[1]); catch(NumberFormaatException e) usage(); } try{ // 产生一个Socket ,通过指定的端口与主机通信。 s = new Socket(args[0], port); // 产生用于发出和接收的文本字符流 DataInputStream sin = new DataInputStream(s。
getInputStream()); PrintStream sout = new DataInputStream(s。getInputStream()); // 从控制台读入字符流 DataInputStream in = new DataInputStream(System。
in); // 返回连接的地址和端口 ystem。out。println("Connected to"+s。getInetAddress()+":"+ s。getPort()); String line; For(;;) { // 显示提示符 System。
out。print(" >"); System。out。flush(); // 读入控制台输入的一行字符 line = in。readline(); if (line == null) break; // 将接收的文本行送至服务器 sout。
println(line); // 从服务器接收一行字符 line = sin。readline(); // Check if connection is closed(i。e。 for EOF) if(line == null) { System。
out。println("Connection closed by server。"); Break; } // 在控制台上显示接收的字符 System。out。println(line); } // End of for loop } // End of try catch(IOException e ) System。
err。println(e); // Always be sure to close the socket finally { try if(s != null) s。close(); catch(IOException e2); } } // End of main } // End of Client 运行该客户机程序时,必须以服务器主机名作为第一个参数,服务器端口号为第二个参数,其中服务器端口号可缺省。
以上是分析内容,仅供参考,谢谢!。
全部