输入editText为hex,发送为int?

时间:2014-04-28 19:26:29

标签: java android hex

我使用SPP通过以下方法将数据从我的Android应用程序发送到蓝牙模块,这需要一个int。

      public void writeHex(int i){
        try{
            mmOutStream.write(i);
            }catch (IOException e){   
        }
    }

当我使用诸如'0xD'之类的int时,它可以正常工作,所以这里没有任何错误。但是我试图从已经格式化的editText中获取数据,以便它只能接受0-F作为输入。从这里我想我需要在字符串中添加'0x'然后转换为int。

例如我的editText输入'4E',然后我创建一个以'0x'开头的新字符串生成器。然后我将输入的4E值附加到字符串并转换为int。但是,当我尝试转换为int表示它无效时,我收到错误。

我知道这可能是错的,但我不知道怎么做?任何答案或提示都会非常感激。我的转换代码如下:

   btnSendHex.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        StringBuilder hexString = new StringBuilder();
        hexString.append("0x");
        hexString.append(dataInputHex.getText().toString());
        String hexWrite = hexString.toString();
        int hexValue = Integer.parseInt(hexWrite);
        mConnectedThread.writeHex(hexValue);
        }
  });

由于

0 个答案:

没有答案