我知道这个问题有很多问题,显然你无法解析任何日期.但是,我发现python-dateutil库能够解析我抛出的每个日期,同时在确定日期格式字符串时完全没有必要.Joda时间总是作为一个伟大的Java日期解析器出售,但它仍然需要您在选择Format(或创建自己的)之前决定日期的格式.你不能只调用DateFormatter.parse(mydate)并神奇地获得一个Date对象.
例如,使用python-dateutil正确解析日期"Wed Mar 04 05:09:06 GMT-06:00 2009":
import dateutil.parser
print dateutil.parser.parse('Wed Mar 04 05:09:06 GMT-06:00 2009')
Run Code Online (Sandbox Code Playgroud)
但以下Joda时间调用不起作用:
String date = "Wed Mar 04 05:09:06 GMT-06:00 2009";
DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
DateTime dt = fmt.parseDateTime(date);
System.out.println(date);
Run Code Online (Sandbox Code Playgroud)
并且创建自己的DateTimeFormatter会破坏目的,因为这似乎与使用具有正确格式字符串的SimpleDateFormatter相同.
是否有类似的方法来解析Java中的日期,比如python-dateutil?我不关心错误,我只是希望它大多完美.
我有个问题.我试图将一些字符串转换为日期,我不知道日期到达的格式.
它可能会yyyy.mm.dd hh:mm:ss或MM.dd.yy hh:mm:ss等等.
如何将这些字符串转换为Date?我试过这个:
DateFormat formatter = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss");
Date d = (Date)formatter.parse(someDate);
Run Code Online (Sandbox Code Playgroud)
但是当我打印出someDate时,它打印出来像这样:2010-08-05 12:42:48.638 CEST这意味着yyyy.mm.dd hh:mm:ss,但是当我运行上面的代码时,日期对象现在变得Sat Jan 31 00:42:48 CET 11奇怪,至少可以说.
有关如何正确格式化字符串的想法吗?
可能重复:
解析Java中的任何日期
假设我们有一个格式的日期字符串(用户不知道).您可以从用户收到的可接受日期的示例:
yyyy-MM-dd/yy-MM-ddyyyy/MM/dd/yy/MM/dddd/MM/yyyy/dd/MM/yyMM/dd/yyyy/ MM/dd/yy`是否有一个库接受字符串中的日期并返回可由SimpleDateFormatJoda Time 使用的日期格式?
谢谢
我希望能够从DateTime字符串中获取格式字符串.
例如
"2012-12-08 15:00:00"=>"yyyy-MM-dd HH:mm:ss"
"2013/30/01 16:00"=>"yyyy/dd/MM HH:mm"
这可能吗?
我已根据名称对数据进行了排序.但是当我要根据"日期"对哈希映射的arraylist数据进行排序时,我不知道如何解决它.我按名称排序的方法如下.
protected ArrayList<HashMap<String, String>> setListOrderByName(ArrayList<HashMap<String, String>> menuItems2) {
Collections.sort(menuItems2, new Comparator<HashMap<String, String>>() {
public int compare(HashMap<String, String> mapping1,
HashMap<String, String> mapping2) {
return mapping1.get(KEY_NAME).compareTo(mapping2.get(KEY_NAME));
}
});
return menuItems2;
}
Run Code Online (Sandbox Code Playgroud)
我收到了xml解析的数据.我们以字符串格式获取名称,日期,时间等.