用JAVA SOCKET编程,读服务器几个字符,再写入本地显示
问题:用JAVA SOCKET编程,读服务器几个字符,再写入本地显示。
?
(1)客户端
?
?
(2)服务端
package com.socket;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStream;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;//客户端public class Server {public static void main(String[] args) {ServerSocket server = null;Socket clientSocket = null;InputStreamReader input = null;// 字节流到字符流的桥梁BufferedReader in = null;OutputStream output = null;PrintWriter out = null;try {// 创建一个服务端server = new ServerSocket(400);// 接收一个客户端clientSocket = server.accept();// 获取客户端的读入流并进行包装input = new InputStreamReader(clientSocket.getInputStream());in = new BufferedReader(input);// 获取客户端的输出流并进行包装output = clientSocket.getOutputStream();out = new PrintWriter(output, true);// 一定要刷新// 从客户端输入信息String str = in.readLine();//System.out.println(str);while (!str.equals("exit")) {out.println(str);// 把从客户端读取的信息返回给客户端str = in.readLine();// 继续从客户端读取信息}} catch (Exception e) {e.printStackTrace();} finally {// 关闭流if (out != null) {out.close();}if (output != null) {try {output.close();} catch (IOException e) {e.printStackTrace();}}if (in != null) {try {in.close();} catch (IOException e) {e.printStackTrace();}}if (input != null) {try {input.close();} catch (IOException e) {e.printStackTrace();}}if (clientSocket != null) {try {clientSocket.close();} catch (IOException e) {e.printStackTrace();}}if (server != null) {try {server.close();} catch (IOException e) {e.printStackTrace();}}}}}?