Java Socket 在传输String时,在字符串前出现了空格

img

如图片所示:客户端发来OK时,在服务器端字符串前出现空格,

img


package socket;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

import javax.swing.JFrame;
import javax.swing.JTextField;

import chat.ChatFrame;
import message_show.Messageshow;

/*
 * Socket接收消息
 */

public class Receive_Thread extends Thread{
    
    final int Socket_string = 1;
    final int Socket_picture = 2;
    final int Socket_vedio = 3;
    public int type;
    public String recontent;
    private InputStream is = null;    
    
    ChatFrame chatframe;
    Socket socket;
    public Receive_Thread(Socket socket,ChatFrame chatframe){
        this.chatframe=chatframe;
        this.socket=socket;
    }
    
    @Override
    public void run() {
        
        while(true){
            
            //一直等待接收消息    
            try {
                is = socket.getInputStream();
                
//                if(is!=null){
//                    System.out.println("laixiaoxil");
//                }
//                
//                else{
//                    System.out.println("kongde");
//                }
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            byte[] types = new byte[4];
            try {
                is.read(types);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            type = BytesUtils.bytes2Int(types);             
             if(type==1){
                //收到的是文字消息
                BufferedReader br = null;
                try {
                    br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
                } catch (IOException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }
                try {
                    while((recontent = br.readLine())!=null) {
                      recontent.trim();
                      System.out.println(recontent);
                      new Messageshow(chatframe.acceptPane,chatframe.scoPaneOne,false,recontent);
                         }
                    
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
             else if(type==2){
                 System.out.println("是图片呀");
             }
             
//             socket.isInputShutdown();
    }
        
    }
    
}