Java 为相同的.getBytes()分配不同的消息

Java 为相同的.getBytes()分配不同的消息,java,Java,现在,我的用户界面有4个EditText对象。 第1行、第2行、第3行和第4行 我开始发送数据: 在第1行,字符串是4569 第2行的字符串是369 当我尝试使用msg.getBytes.length获取长度时,我只得到4,即第1行字符串的长度=4569。但实际上,我发送了两行数据,其中两行是用数据填充的EditText 但是我如何得到第2行、第3行和第4行的长度呢 buttonConnect.setOnClickListener将数据发送到蓝牙设备 sendMessageHandle方法: 堆

现在,我的用户界面有4个EditText对象。 第1行、第2行、第3行和第4行

我开始发送数据:

在第1行,字符串是4569

第2行的字符串是369

当我尝试使用msg.getBytes.length获取长度时,我只得到4,即第1行字符串的长度=4569。但实际上,我发送了两行数据,其中两行是用数据填充的EditText

但是我如何得到第2行、第3行和第4行的长度呢

buttonConnect.setOnClickListener将数据发送到蓝牙设备

sendMessageHandle方法:


堆栈溢出是一件好事。它讨论了最小的代码,以便能够重现您的问题,而不会把所有代码弄得一团糟。你能试着让少量的代码以同样的方式运行吗@TheOneWhoPrograms-很抱歉。我已编辑以显示所涉及的主代码;但是你想打印contentRow2的长度???@ScaryWombat-我必须发送消息句柄-sendMessageHandlecontentRow1.getText.toString;和sendMessageHandlecontentRow2.getText.toString;但是对于getBytes,我只知道如何获取第1行的内容。如何获得第2行的长度?我真的不明白您的要求。也许英语不是你的母语,我很感激,但请努力解释。
buttonConnect.setOnClickListener(new View.OnClickListener() {

        @SuppressLint("NewApi")
        @Override
        public void onClick(View arg0) {
            if (count == 0) {
                Toast.makeText(bluetoothtest.this,
                        "Please enable bluetooth first.",
                        Toast.LENGTH_LONG).show();
            } 
            // Need API=14
            else if (!socket.isConnected()) {
                    Toast.makeText(bluetoothtest.this,
                            "Connecting! Please wait.",
                            Toast.LENGTH_LONG).show();
                }
            else {
                try {
                    sendMessageHandle(contentRow1.getText().toString());
                    sendMessageHandle(contentRow2.getText().toString());

                } catch (Exception e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }

        }
    });
private void sendMessageHandle(String msg) throws InterruptedException {

    final byte ANIMATION_MODE=1;
    final byte PICTURE_MODE=2;
    final byte TEXT_MODE=3;
    //final String PAUSE = "1";

    int temp,row;

    sPrefs = getSharedPreferences("storeData",MODE_PRIVATE);

    byte mode = (byte) sPrefs.getInt("Mode",1);
    byte [] pictureData = new byte [129];
    byte [] textSetting =new byte [5];


    if (socket == null) {
        Toast.makeText(mContext, "No connection", Toast.LENGTH_SHORT)
                .show();
        return;
    }
    try {
        OutputStream outputStream = socket.getOutputStream();
        if(mode==TEXT_MODE){
            int l;
            textSetting[0]= 4;
            Thread.sleep(500);
            l = msg.getBytes().length;
            System.out.println("Length is "+ l);


            outputStream.write(textSetting);    
            outputStream.write(msg.getBytes());


        }
                                                //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        //outputStream.write(PAUSE.getBytes());

    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    list.add(new deviceListItem(msg, false));
    mAdapter.notifyDataSetChanged();
    chatList.setSelection(list.size() - 1);
}