我有这个代码:
final byte[] bslval = data1.getByteArray(HRPService.BSL_VALUE);
runOnUiThread(new Runnable()
{
public void run()
{
if (bslval != null)
{
try
{
Log.i(TAG, "BYTE BSL VAL =" + bslval[0]);
//TextView bsltv = (TextView) findViewById(R.id.BodySensorLocation);
EditText bsltv = (EditText) findViewById(R.id.EditSensorLocation);
String bslstr = new String(bslval, "UTF-8");
bsltv.setText(bslstr);
}
catch (Exception e)
{
Log.e(TAG, e.toString());
}
EditText 确实将值显示为“d”,但不是“64”(我想要的)。如何将其转换为小数?
最佳答案
类似这样的事情:
String bslstr = String.valueOf(bslval[0] & 0xff);
假设该值实际上位于 bslval[0]
中。 & 0xff
用于获取 (byte)0x80
和 (byte)0xff
之间的字节值的正结果。
关于java - 如何将 ASCII 转换为十进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18338810/