I already know what is causing this error, I just do not know how to handle the case when a user doesn\'t enter anything into the dialogue box, then hit the button which par
Problem: How do you check to see if the dialogue box has text in it, before it tries to run the rest of the code.
Solution: An if
statement.
int parseToInt(String maybeInt, int defaultValue){
if (maybeInt == null) return defaultValue;
maybeInt = maybeInt.trim();
if (maybeInt.isEmpty()) return defaultValue;
return Integer.parseInt(maybeInt);
}
If you can spare the extra dependency, I'd pull in Common Lang StringUtils, to use StringUtils.isBlank instead of trim/isEmpty, because that also handles Unicode.
Some code would help with the syntax but basically
if ("".equals(text) // where text is the text that you get from an EditText or wherever you get it
{ // give message to enter valid text; }
Also, you can surround with a try/catch
and catch a numberFormatException then print an appropriate message
String text = editText.getText().toString();
if(!text.equals("") && text.matches("^\\d+$")){
cast to int
}
The Same Error Was Causing My Application To Crash. Ans is Simple- Put the code in the
try{ }
and
catch()
Block which causes Exception ,like this code snip.This Works for me.
public void setAge(String age) {
final Calendar c = Calendar.getInstance();
int yearCurrent = c.get(Calendar.YEAR);
try {
int yearPrev = (int) Integer.parseInt(age.substring(0, 4));//this line was causing the error
int ageYear=yearCurrent-yearPrev;
ageUser="Age : "+Integer.toString(ageYear);
}
catch(NumberFormatException numberEx) {
System.out.print(numberEx);
}
}