通过单击按钮将文本消息从Java服务器发送到Android客户端USIG套接字



>我需要通过单击按钮从核心Java服务器向Android客户端发送文本消息。 但是,它不会显示错误,并且消息不会发送到客户端。

服务器端按钮代码:

private void msg_sendActionPerformed(java.awt.event.ActionEvent evt)   {                                         
// TODO add your handling code here:
    String msgout="";
    msgout=msg_text.getText().toString();
    try{
        dout.writeUTF(msgout);
        //printWriter.write(msgout + "n");
        System.out.printf(msgout);
        //printWriter.flush();
    }catch(Exception e){
    }
} 

客户端代码:

Thread r = new Thread(new Runnable() {
    @Override
    public void run() {
        try {
            s = new Socket("192.168.1.5", 1201);
            // din=new DataInputStream(s.getInputStream());
            inputStreamReader = new InputStreamReader(s.getInputStream());
            bufferedReader = new BufferedReader(inputStreamReader);
            dataout = new DataOutputStream(s.getOutputStream());
            String message = "";
            while (!message.equals("exit")) {
                //msgin=din.readUTF();
                message = bufferedReader.readLine();
                msg_area.setText(msg_area.getText().toString() + "n       Server:t" + message);
            }
        } catch (Exception e) {
            Toast.makeText(getApplicationContext(), "Exception-->" + e.getMessage(), Toast.LENGTH_SHORT).show();
        }
    }
});
r.start();

readLine()读取行。你不是在发送一行。您正在使用 writeUTF() 发送,它使用一种特殊的格式,记录在 Javadoc 中。发送行或使用readUTF).

最新更新