Java 如何将ASCII转换为十进制

Java 如何将ASCII转换为十进制,java,android,Java,Android,我有以下代码: final byte[] bslval = data1.getByteArray(HRPService.BSL_VALUE); runOnUiThread(new Runnable() { public void run() { if (bslval != null) { try { Log.i(TAG, "BYTE BSL VAL =" +

我有以下代码:

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]
中。如果您只想将第一个字节值
bslval[0]
设置为文本,则
&0xff
可以为
(byte)0x80
(byte)0xff

之间的字节值获得正结果

bsltv.setText(bslval[0] + "");

为什么会这样<代码>新字符串(字节[],字符串)
根据编码使用字节创建新字符串。TextUtils.join可以执行您想要的操作。