题目:建立一个文本转换器,客户端向服务器端发送文本,服务器端将文本转换成大写返回给客户端,而且客户端可以不断进行文本转换,当输入over时停止import java.io.*;import java.net.*;public class TransClient { public static void main(String[] args) throws UnknownHostException, IOException { // TODO Auto-generated method stub Socket s=new Socket("127.0.0.1",10005); BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bufout=new BufferedWriter(new OutputStreamWriter(s.getOutputStream())); BufferedReader bufin=new BufferedReader(new InputStreamReader(s.getInputStream())); String line=null; while((line=bufr.readLine())!=null){ if("over".equals(line)) break; { System.out.PRintln("向服务器发送的数据是"+line); bufout.write(line); bufout.newLine();//如果不加这两句话的话,就会出现莫名的等待,因为readline是阻塞式的方法,没有读到结束标记 bufout.flush(); String line2=bufin.readLine(); System.out.println("服务器返回的数据为"+line2); } } s.close(); }}import java.io.*;import java.net.*;public class TransServer { public static void main(String[] args) throws IOException{ ServerSocket ss=new ServerSocket(10005); Socket s=ss.accept(); String ip = s.getInetAddress().getHostAddress(); System.out.println(ip + "is connected"); BufferedReader bufin=new BufferedReader(new InputStreamReader(s.getInputStream())); BufferedWriter bufout=new BufferedWriter(new OutputStreamWriter(s.getOutputStream())); String line=null; while((line=bufin.readLine())!=null) { String line2=line.toUpperCase(); System.out.println(line2); bufout.write(line2); bufout.newLine();//如果不加这两句话的话,就会出现莫名的等待,因为readline是阻塞式的方法,没有读到结束标记 bufout.flush(); } s.close(); ss.close(); }}
新闻热点
疑难解答