Android 中的解析异常
Parse exception in Android
我正在使用 SimpleDateFormat
class 来解析日期,如下所示:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
但是,得到如下 Parse 异常错误:
java.text.ParseException: Unparseable date: "2015-09-16 10:21 AM" (at offset 16)
我检查了另一种格式,作为 SimpleDateFormat
class 中的参数是:
"yyyy-MM-dd HH:mm:ss a" 但是,仍然出现同样的错误。
是否有任何其他日期时间格式我必须作为 SimpleDateFormat
class 的参数传递?
TimePicker
widget 不提供年月日,只提供小时和分钟
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm");
要获取年月日,您必须使用 DatePicker
小部件
如果您的输入没有第二个值,试试这个..
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd hh:mm a");
如果它还有第二个值,那么使用这个
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a");
否则高于一个
正如您在上述评论中所说,您使用 TimePicker
选择日期时间并对其进行解析。而你说你也想要第二个。但显然,TimePicker
不包括第二个。那么你怎么知道用户想要哪一秒呢?我猜是 0。您可以将字符串插入正确的位置以使其工作。在您的情况下,您应该在索引 16 中插入“:00”。只需使用 StringBuilder
!
StringBuilder builder = new StringBuilder("2015-09-16 10:21 AM");
builder.insert (16, ":00");
我正在使用 SimpleDateFormat
class 来解析日期,如下所示:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
但是,得到如下 Parse 异常错误:
java.text.ParseException: Unparseable date: "2015-09-16 10:21 AM" (at offset 16)
我检查了另一种格式,作为 SimpleDateFormat
class 中的参数是:
"yyyy-MM-dd HH:mm:ss a" 但是,仍然出现同样的错误。
是否有任何其他日期时间格式我必须作为 SimpleDateFormat
class 的参数传递?
TimePicker
widget 不提供年月日,只提供小时和分钟
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm");
要获取年月日,您必须使用 DatePicker
小部件
如果您的输入没有第二个值,试试这个..
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd hh:mm a");
如果它还有第二个值,那么使用这个
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a");
否则高于一个
正如您在上述评论中所说,您使用 TimePicker
选择日期时间并对其进行解析。而你说你也想要第二个。但显然,TimePicker
不包括第二个。那么你怎么知道用户想要哪一秒呢?我猜是 0。您可以将字符串插入正确的位置以使其工作。在您的情况下,您应该在索引 16 中插入“:00”。只需使用 StringBuilder
!
StringBuilder builder = new StringBuilder("2015-09-16 10:21 AM");
builder.insert (16, ":00");