java - 如何将 ASCII 转换为十进制

标签 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 =" + 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/

相关文章:

java - WildFly8 EJB3 MySQL 加载驱动程序不起作用

Java - 如何将组件的垂直列居中?

java - 从文件中读取 unicode 并显示文本

android - 如何将 Android .aar 文件发布到 Artifactory

android - Android基于地理信息的增强现实开发的最佳开放框架

java - Oracle JDBC 连接 : Transaction Isolation Level

java - import org.apache.hadoop 无法解析

java - 我从匹配器点查找中得到indexoutofbound异常

android - 在它们之间有分隔线的 TextView

android - 从 android NativeActivity 调用 Native 代码