0

我有一个EditText用户键入十六进制数的地方,我想将其转换为十进制数并显示在 a 上TextView,但TextView由于异常,我什至无法显示十六进制数:“无法解析'字符串'作为整数。我只能在 . 上显示数字,TextView当我输入字符时它会抛出异常。

这是一段代码:

EditText edText1 = (EditText) findViewById(R.id.editText1);
TextView result = (TextView) findViewById(R.id.textView1);
result.setText(""+ Integer.parseInt(edText1.getText().toString(), 16));
4

1 回答 1

2

在我看来,由于edText1.getText(). 当textfield为空时,它仍然存储一个值 - """"仍然是 aString并且仍然有内容,但它不是整数。因此,当您执行此Integer.parseInt()操作时,它会执行以下操作:

result.setText("" + Integer.parseInt("", 16));

""显然不是整数或十六进制,但它仍然是 aString所以它在格式化时遇到问题,然后抛出错误。

于 2013-06-27T03:51:26.940 回答