我得到这种格式的DOB字符串"\/Date(588657600000-0400)\/"
我正在解析如下。java.lang.NumberFormatException:无效的长:“”
String target = custom.getDOB();
if (target == null || target == "") {
holder.item3.setText("-");
} else {
long millis = Long.parseLong(target.substring(
target.indexOf("(") + 1, target.indexOf("-")));
java.text.DateFormat df = new SimpleDateFormat("MM-dd-yyyy", Locale.ENGLISH);
holder.item3.setText(df.format(new Date(millis)));
}
我得到这个错误“04-08 22:44:09.864:E/AndroidRuntime(3837):java.lang.NumberFormatException
:长期无效 “” 我前检查,我的String对象是否包含null or ""
和设置它以 “ - ”,但还是我得到这个例外
更新:
04-08 22:59:17.423:E/AndroidRuntime(4175): java.lang.NumberFormatException。 :长无效:“”04-08 22:59:17.423:E/AndroidRuntime(4175):at java.lang.Long.parseLong() Long.java:346)04-08 22:59:17.423: E/AndroidRuntime(4175):在java.lang.Long.parseLong(Long.java:319)
我改变了我的空和空字符串文字检查到这一点,但我仍然得到这个错误。
if(target == null || target.equals(""))
相关:http://stackoverflow.com/q/3321526/139010 – 2013-04-08 22:52:10
我在收到错误这点... long millis = Long.parseLong(target.substring(target.indexOf(“(”)+ 1,target.indexOf(“ - ”))); // – theJava 2013-04-08 23:02:38
请考虑一下。 indexOf(“ - ”)return? – Simon 2013-04-08 23:08:31