这是我的代码:
import datetime
today = datetime.date.today()
print today
Run Code Online (Sandbox Code Playgroud)
这打印:2008-11-22这正是我想要的但是......我有一个列表我正在追加这个然后突然一切都变得"不稳定".这是代码:
import datetime
mylist = []
today = datetime.date.today()
mylist.append(today)
print mylist
Run Code Online (Sandbox Code Playgroud)
这打印出以下内容:
[datetime.date(2008, 11, 22)]
Run Code Online (Sandbox Code Playgroud)
我怎么能得到像"2008-11-22"这样的简单日期呢?
我试图将ISO 8601格式的字符串转换为java.util.Date.
yyyy-MM-dd'T'HH:mm:ssZ如果与Locale(比较样本)一起使用,我发现该模式符合ISO8601标准.
但是,使用java.text.SimpleDateFormat,我无法转换格式正确的String 2010-01-01T12:00:00+01:00.我必须先将它转换为2010-01-01T12:00:00+0100没有冒号的.
那么,目前的解决方案是
SimpleDateFormat ISO8601DATEFORMAT = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.GERMANY);
String date = "2010-01-01T12:00:00+01:00".replaceAll("\\+0([0-9]){1}\\:00", "+0$100");
System.out.println(ISO8601DATEFORMAT.parse(date));
Run Code Online (Sandbox Code Playgroud)
这显然不是那么好.我错过了什么或者有更好的解决方案吗?
回答
感谢JuanZe的评论,我发现了Joda-Time魔术,这里也有描述.
所以,解决方案是
DateTimeFormatter parser2 = ISODateTimeFormat.dateTimeNoMillis();
String jtdate = "2010-01-01T12:00:00+01:00";
System.out.println(parser2.parseDateTime(jtdate));
Run Code Online (Sandbox Code Playgroud)
或者更简单地说,通过构造函数使用默认解析器:
DateTime dt = new DateTime( "2010-01-01T12:00:00+01:00" ) ;
Run Code Online (Sandbox Code Playgroud)
对我来说,这很好.
如何在JavaScript中从此日期对象生成月份名称(例如:10月/ 10月)?
var objDate = new Date("10/11/2009");
Run Code Online (Sandbox Code Playgroud) 有可能我做一个简单的查询来计算我在一个确定的时间段内有多少记录,如年,月或日,有一个TIMESTAMP字段,如:
SELECT COUNT(id)
FROM stats
WHERE record_date.YEAR = 2009
GROUP BY record_date.YEAR
Run Code Online (Sandbox Code Playgroud)
甚至:
SELECT COUNT(id)
FROM stats
GROUP BY record_date.YEAR, record_date.MONTH
Run Code Online (Sandbox Code Playgroud)
要有月度统计数据.
谢谢!
下面的代码给出了当前时间.但它没有告诉任何关于毫秒的事情.
public static String getCurrentTimeStamp() {
SimpleDateFormat sdfDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//dd/MM/yyyy
Date now = new Date();
String strDate = sdfDate.format(now);
return strDate;
}
Run Code Online (Sandbox Code Playgroud)
我得到格式的日期2009-09-22 16:47:08 (YYYY-MM-DD HH:MI:Sec).
但我想以格式2009-09-22 16:47:08.128((YYYY-MM-DD HH:MI:Sec.Ms)检索当前时间- 其中128表示毫秒.
SimpleTextFormat会很好的.这里最低的时间单位是秒,但我如何获得毫秒?
如何在JavaScript中将字符串转换为日期?
var st = "date in some format"
var dt = new date();
var dt_st= //st in date format same as dt
Run Code Online (Sandbox Code Playgroud) 是不是有一种方便的方法从java.util.Date到XMLGregorianCalendar?
有没有办法使用Python的标准库轻松确定(即一个函数调用)给定月份的最后一天?
如果标准库不支持,那么dateutil包是否支持此功能?
是否有内置的方法在Python 中将a转换date为a datetime,例如获取datetime给定日期的午夜?相反的转换很简单:datetime有一个.date()方法.
我真的要手动打电话datetime(d.year, d.month, d.day)吗?
date ×10
datetime ×3
java ×3
python ×3
javascript ×2
batch-file ×1
cmd ×1
date-format ×1
file-io ×1
group-by ×1
iso8601 ×1
mysql ×1
sql ×1
time-format ×1
windows ×1
xml ×1