我使用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);
}
});
由于