java.text.ParseException: Unparseable date:xxxxxxxxxx
出现这个问题,是因为你的时间格式化的格式是错误
比如yyyy-MM-dd 而你的时间格式是 yyyy:MM:dd
获得您的字符串是一个长整型,而你还是按照字符串方式来进行处理时间
所以您不妨加一个断点,或System.out.println一下
下面我列出如何判断判断长整型还是字符串
我们都知道在一个时间字符串中,如果这个字符串表示一个时间,那么他必然有分隔符
如yyyy:MM:dd
分隔符就是冒号(:),分隔符不可能为数字,如果这个时间字符串全部是数字,那他可能就是一个由长整型表示的时间,根据这个思路,我们就可以写一个方法来处理
//判断传递过来的字符串是长整形还是字符串型 private boolean longOrString(String birthday){ boolean b = false; int L = birthday.length(); for(int i=0;i<L;i++){ //遍历每一个字符串,进行判断是否是数字,如果全部是数字就返回false if(birthday.charAt(i)<'0' || birthday.charAt(i)>'9'){ //表示有非数字的日期格式出现字符出现 b = true; break; } //否则的话,那全是数字,即Long类型 } return b; }下面的方法是长整型转换为日期格式的方法
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS Z"); Date d = new Date(); //birthday是传递过来的长整型 d.setTime(birthday);
爆款云服务器s6 2核4G 低至0.46/天,具体规则查看活动详情