因为我周一的时候做的《第三个作业:网络编程》没有发日志,所以现在发在此日志里,相当于补发。
《Java程序设计》第三次作业:网络编程
作业的目标 目标1:Socket简单应用。 目标2:博文统计程序。
先做目标1,首先,把教材P238中例11-5代码敲下来,还有一些步骤就不具体用文字写出来了:
(1)
import java.io.*;
import java.net.*;
public class ChatClient{
public static void main(String args []){
try{
Socket socket=new Socket("127.0.0.1",4000);
System.out.println("输入你要说的话,如果要退出输入bye");
BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
PrintWriter os=new PrintWriter(socket.getOutputStream());
BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
String readline;
readline=sin.readLine();
while(!readline.equals("bye")){
os.println(readline);
os.flush();
System.out.println("Client:"+readline);
System.out.println("Server:"+is.readLine());
readline=sin.readLine();
}
os.close();
is.close();
socket.close();
}catch(Exception e){
System.out.println("Error"+e);
}
}
}
(2)
import java.io.*;
import java.net.*;
import java.applet.Applet;
public class ChatServer {
public static void main(String args[]){
try{
ServerSocket server=null;
try{
server=new ServerSocket(4000);
System.out.println("准备好了,退出输入bye");
}catch(Exception e){
System.out.println("can not listen to:"+e);
}
Socket socket=null;
try{
socket=server.accept();
}catch(Exception e){
System.out.println("Error."+e);
}String line;
BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter os=new PrintWriter(socket.getOutputStream());
BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Client:"+is.readLine());
line=sin.readLine();
while(!line.equals("bye")){
os.println(line);
os.flush();
System.out.println("Server:"+line);
System.out.println("Cline:"+is.readLine());
line=sin.readLine();
}
os.close();
is.close();
socket.close();
server.close();
}catch(Exception e){
}
}
}
目标2尚未完成,待续。