我是android的新手,所以我对所有错误都不陌生,这是我在解析json时在catch子句中遇到的错误(JSONException的Unreachable catch块。从try语句主体永远不会抛出此异常)。谁能告诉我该怎么办。感谢我的代码:
if (usernameEditText == null || passwordEditText == null)
{
Toast.makeText(HelloAndroid.this, "Please enter your username & password",Toast.LENGTH_SHORT).show();
}
else
{
// display the username and the password in string format
try
{
showBusyCursor(true);
progress = ProgressDialog.show(this,"Please wait...", "Login in process", true);
Log.i(DEB_TAG, "Username: " + sUserName + "nPassword: " + sPassword);
Log.i(DEB_TAG, "Requesting to "+address);
JSONObject json = RestJsonClient.connect(address);
}
catch (JSONException e)
{
e.printStackTrace();
showBusyCursor(false);
}
}
最佳答案
您的错误意味着
1. try
块中的代码永远不会抛出JSONException
,
2.或JSONException
被捕获在catch (JSONException e)
块之前,因此您的try-catch
块可能看起来像:
try {
[...]
}
catch (Exception e) {
// some code
}
catch (JSONException e) {
//some other code...
}
在这里,
catch (Exception e)
块在JSONException
之前被调用,并且由于JSONException
扩展了Exception
类,因此将永远不会输入它。在这种情况下,您应该更改catch块的顺序,并且能够以不同方式处理这两种异常类型。
关于android - Json解析错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5895830/