我正在尝试解析一个字符串以获得3整数,但是我有一个强制关闭并且LogCat说:ArrayIndexOutOfBoundExceptions。
这是我的代码的相关部分:
dateModif = tvDateAffichee.getText().toString();
String[] separatedDate = dateModif.split(".");
mDay = Integer.parseInt(separatedDate[0]);
mMonth = Integer.parseInt(separatedDate[1]);
mYear = Integer.parseInt(separatedDate[2]);
我用烤面包检查了字符串的值,它包含的值例如:13.9.2011
错误来自此行:
mDay = Integer.parseInt(separatedDate[0]);
(如果我将其作为注释,则从下一行给出相同的错误)
谢谢你的帮助!
最佳答案
String.split()
使用正则表达式,在这种情况下,.
表示“任何字符”。您需要这样逃避它:\.
。并且由于您将正则表达式指定为String
文字,因此需要将反斜杠加倍:dateModif.split("\\.")
。
但是最好使用实时日期解析方法。