实验08 Java之网络编程Word格式.docx
《实验08 Java之网络编程Word格式.docx》由会员分享,可在线阅读,更多相关《实验08 Java之网络编程Word格式.docx(11页珍藏版)》请在冰豆网上搜索。
importjava.io.IOException;
importjava.io.InputStreamReader;
importjava.io.OutputStreamWriter;
import.Socket;
import.UnknownHostException;
importjava.util.Scanner;
publicclassClient{
publicstaticvoidmain(String[]args){
Socketclient=null;
InputStreamReaderin=null;
//将字节流变为字符流,有转换功能
OutputStreamWriterout=null;
try{
client=newSocket("
localhost"
4331);
}catch(UnknownHostExceptione2){
//TODOAuto-generatedcatchblock
e2.printStackTrace();
}catch(IOExceptione2){
}
in=newInputStreamReader(client.getInputStream());
}catch(IOExceptione1){
e1.printStackTrace();
out=newOutputStreamWriter(client.getOutputStream());
BufferedWriterbout=newBufferedWriter(out);
BufferedReaderbin=newBufferedReader(in);
while(true){//从客户端向服务器传输数据
System.out.println("
请输入'
Time'
或者'
Exit'
"
);
Scannerreader=newScanner(System.in);
try{
bout.write(reader.next());
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
bout.newLine();
bout.flush();
Stringmassage=null;
massage=bin.readLine();
if(massage.equals("
Bye"
)){
System.out.println("
From
server:
+massage);
break;
else
System.out.println("
从服务器返回的时间:
}
client.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}
importjava.io.DataOutputStream;
import.ServerSocket;
importjava.text.SimpleDateFormat;
importjava.util.Date;
publicclassServer{
ServerSocketserver=null;
server=newServerSocket(4331);
System.out.println("
服务器启动完毕"
等待客户端连接..."
Socketyou=null;
you=server.accept();
InputStreamReaderin=null;
OutputStreamWriterout=null;
in=newInputStreamReader(you.getInputStream());
out=newOutputStreamWriter(you.getOutputStream());
BufferedWriterbout=newBufferedWriter(out);
BufferedReaderbin=newBufferedReader(in);
if(you.isConnected()){
客户端名称为"
+you.getInetAddress().getHostAddress()
+"
连接成功!
while(true){
Strings=null;
try{
s=bin.readLine();
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
if(s.equals("
Time"
)){
Datedate=newDate();
客户端请求当前时间"
SimpleDateFormatformat=newSimpleDateFormat(
"
yyyy/MM/ddHH:
mm:
ss"
}elseif(s.equals("
exit"
bout.write("
bye!
!
you.close();
[基本要求]编写完整程序。
实验题2编写一数据报通信程序,实现简单的聊天功能。
图3.9聊天程序界面
[基本要求]两人一组编写完整程序。
“聊天内容”和“输入文本”分别为当前聊天的历史信息和当前要传送出去的聊天文本。
“确定”、“清空”、“退出”三个按钮分别实现发送当前聊天文本、清空当前聊天文本和退出系统的功能。
importjava.awt.*;
importjava.awt.event.*;