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可以执行您想要的操作。