zyf4005 2016-07-03 05:38 采纳率: 100%
浏览 980
已结题

请各位大侠帮忙看个java 问题,万分感谢!

package tcpTest;

import java.io.BufferedReader;


import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

public class TransClient {

    /**
    * @param args
    * @throws IOException 
    * @throws UnknownHostException 
    */
    public static void main(String[] args) throws UnknownHostException, IOException {
        /*需求:客户端获取从键盘输入小写字母,然后发送到服务端,转换成大写字母后再返回给客户端并打印;
        *思路:1.创建客户端socket对象,并制定服务端地址;
        *    2.获取键盘敲入的小写字母;
        *    3.发送到服务端;
        *    4.服务端读取后变为大写后返回给客户端并打印;
        *    5.我的ip是192.168.1.101
        */
        Socket socket = new Socket(InetAddress.getByName("192.168.1.101"),10002);
        BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
        //PrintWriter pw = new PrintWriter(socket.getOutputStream());

        BufferedReader bufIn = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        String line = null;
        while((line=bufr.readLine())!=null){    
            if("over".equals(line))
                break;
            bufw.write(line);
                        bufw.flush();

            String str1 = bufIn.readLine();
        System.out.println(str1);


        }
        socket.close();
    }

}


    package tcpTest;

import java.io.BufferedReader;

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class TransServer {

    /**
    * @param args
    * @throws IOException 
    */
    public static void main(String[] args) throws IOException {
        ServerSocket ss = new ServerSocket(10002);
        Socket socket = ss.accept();
        BufferedReader bufr = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
        String str = null;
        while((str = bufr.readLine())!=null){
            bufw.write(str.toUpperCase());
            bufw.flush();;
        }
        socket.close();
        ss.close();


    }

}

问题是为啥没有我希望的效果呢???

  • 写回答

4条回答 默认 最新

  • gamedev˚ 2016-07-03 09:26
    关注

    你希望的是什么?

    评论

报告相同问题?