客户端
复制代码代码如下:
استيراد java.io.bufferedreader ؛
استيراد java.io.inputstreamreader ؛
استيراد java.io.printwriter ؛
استيراد java.net.socket ؛
الطبقة العامة myClient {
الفراغ الثابت العام (سلسلة [] args) يلقي الاستثناء {
Socket Socket = Socket ("LocalHost" ، 10000) ؛
BufferedReader في = جديد BufferEdReader (New InputStreamReader (Socket.getInputStream ())) ؛
printWriter out = new printWriter (socket.getOutputStream ()) ؛
BufferedReader Reader = جديد BufferEdReader (New InputStreamReader (System.in)) ؛
بينما (صحيح) {
سلسلة msg = reader.ReadLine () ؛
Out.println (msg) ؛
out.flush () ؛
if (msg.equals ("bye")) {
استراحة؛
}
System.out.println (in.ReadLine ()) ؛
}
socket.close () ؛
}
}
服务端
复制代码代码如下:
استيراد java.io.bufferedreader ؛
استيراد java.io.ioException ؛
استيراد java.io.inputstreamreader ؛
استيراد java.io.printwriter ؛
استيراد java.net.serversocket ؛
استيراد java.net.socket ؛
الطبقة العامة myserver {
الفراغ الثابت العام (سلسلة [] args) يلقي ioexception {
Serversocket Server = New ServersOcket (10000) ؛
بينما (صحيح) {
Socket Socket = server.accept () ؛
استدعاء (مقبس) ؛
}
}
استدعاء الفراغ الثابت الخاص (عميل المقبس النهائي) يلقي ioException {
موضوع جديد (جديد RunNable () {
تشغيل الفراغ العام () {
BufferedReader في = فارغة ؛
printWriter Out = null ؛
يحاول {
في = جديد bufferedReader (inputStreamReader جديد (client.getInputStream ())) ؛
out = new printWriter (client.getOutputStream ()) ؛
بينما (صحيح) {
سلسلة msg = in.readline () ؛
system.out.println (msg) ؛
Out.println ("خادم استلام" + msg) ؛
out.flush () ؛
if (msg.equals ("bye")) {
استراحة؛
}
}
} catch (ioException ex) {
ex.printStackTrace () ؛
} أخيراً {
يحاول {
in.close () ؛
} catch (استثناء e) {}
يحاول {
out.close () ؛
} catch (استثناء e) {}
يحاول {
client.close () ؛
} catch (استثناء e) {}
}
}
}).يبدأ()؛
}
}