『壹』 java问题 获取当前时间
getDate();
换成
new Date()就可以了,注意这里Date()是java.util包中的。
这样输出的时间格式是:
dow mon dd hh:mm:ss zzz yyyy其中:
dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。
mon 是月份 (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)。
dd 是一月中的某一天(01 至 31),显示为两位十进制数。
hh 是一天中的小时(00 至 23),显示为两位十进制数。
mm 是小时中的分钟(00 至 59),显示为两位十进制数。
ss 是分钟中的秒数(00 至 61),显示为两位十进制数。
zzz 是时区(并可以反映夏令时)。标准时区缩写包括方法 parse 识别的时区缩写。如果不提供时区信息,则 zzz 为空,即根本不包括任何字符。
yyyy 是年份,显示为 4 位十进制数。
例如:今天的某个时间 Wed May 12 10:28:34 CST 2010
如果以上面的这种时间形式直接插入到数据库,可能可读性较差
因此需要对时间格式进行适当的调整
可利用java提供的java.text.SimpleDateFormat类进行修改
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
输出的时间格式为 2010-05-12 10:28:34
最后将getDate()修改成
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())
就可以了
『贰』 java Date Calendar 区别
Calendar是日历
Date是时间
Date用来表示当前时间,通常是用来单纯的专记录一个时属间,它提供的api也非常少
而Calendar则有非常多的api,
例如,
获取今天是星期几
今天是哪个月,本月有几天,今天是本月的第几个星期
今天是今年的第几天,等等等等,Date是无法完成的!!
『叁』 java中utc时间怎么转换为本地时间
utc毫秒值是个绝对值,和时区无关。如果需要转换为对应时区的时间表示,可以使用java.text.DateFormat的setTimeZone(timeZone)之后,进行format
『肆』 java中如何对时间做国际化处理啊
二 java中的相关类介绍
<1>java.util.Locale
Locale类的一个实例通常包含国家和语言信息。其中的每一个部分都是由基于国际标准化组织(ISO)制定的国家代码ISO-3166和语言代码ISO-639的两字符的字符串构成的
01.// Get the current system date and time. 02.Date date = new Date(); 03. 04.// Get a France locale using a Locale constant. 05.Locale localeZN = Locale.CHINESE; 06. 07.// Create an English/US locale using the constructor. 08.Locale localeEN = new Locale("en", "US" ); 09. 10.// Get a date time formatter for display in France. 11.DateFormat fullDateFormatFR = 12.DateFormat.getDateTimeInstance( 13.DateFormat.FULL, 14.DateFormat.FULL, 15.localeZN); 16. 17.// Get a date time formatter for display in the U.S. 18.DateFormat fullDateFormatEN = 19.DateFormat.getDateTimeInstance( 20.DateFormat.FULL, 21.DateFormat.FULL, 22.localeEN); 23. 24.System.out.println("Locale: " + localeZN.getDisplayName()); 25.System.out.println(fullDateFormatFR.format(date)); 26.System.out.println("Locale: " + localeEN.getDisplayName()); 27.System.out.println(fullDateFormatEN.format(date)); <2>java.util.TimeZone
TimeZone类的实例包含了一个与格林威治标准时间(GMT)相比较得出的以微秒为单位的时区偏移量,而且它还处理夏令时。getDefault从系统时钟返回时区数据
01./*TimeZone对象给我们的是原始的偏移量,也就是与GMT相差的微秒数,而且还会告诉我们这个时区是否使用夏令时*/ 02. 03. TimeZone timeZoneFL = TimeZone.getDefault(); 04. System.out.println("\n" + timeZoneFL.getDisplayName()); 05. System.out.println("RawOffset: " + timeZoneFL.getRawOffset()); 06. System.out.println("Uses daylight saving: " + timeZoneFL.useDaylightTime()); 07. 08. TimeZone timeZoneLondon = TimeZone.getTimeZone("America/New_York"); 09. System.out.println("\n" + timeZoneLondon.getDisplayName()); 10. System.out.println("RawOffset: " + timeZoneLondon.getRawOffset()); 11. System.out.println("Uses daylight saving: " + timeZoneLondon.useDaylightTime()); 12. 13. TimeZone timeZoneParis = TimeZone.getTimeZone("Europe/Paris"); 14. System.out.println("\n" + timeZoneParis.getDisplayName()); 15. System.out.println("RawOffset: " + timeZoneParis.getRawOffset()); 16. System.out.println("Uses daylight saving: " + timeZoneParis.useDaylightTime()); 混合起来能够支持国际化的需求:
01. Locale localeZN = Locale.CHINESE; 02. Locale localeEN = Locale.US; 03. 04. TimeZone timeZoneHZ = TimeZone.getDefault(); 05. TimeZone timeZoneUS = TimeZone.getTimeZone("America/New_York"); 06. 07. 08. DateFormat dateFormatter = DateFormat.getDateTimeInstance( 09. DateFormat.FULL, 10. DateFormat.FULL, 11. localeZN); 12. DateFormat dateFormatterParis = DateFormat.getDateTimeInstance( 13. DateFormat.FULL, 14. DateFormat.FULL, 15. localeEN); 16. 17. Date curDate = new Date(); 18. 19. System.out.println("Display for China HZ."); 20. System.out.println(timeZoneHZ.getDisplayName(localeZN)); 21. dateFormatter.setTimeZone(timeZoneHZ); 22. System.out.println(dateFormatter.format(curDate)); 23. 24. dateFormatter.setTimeZone(timeZoneUS); 25. System.out.println(timeZoneUS.getDisplayName(localeZN)); 26. System.out.println(dateFormatter.format(curDate)); 27. 28. System.out.println("\nDisplay for US office."); 29. System.out.println(timeZoneHZ.getDisplayName(localeEN)); 30. dateFormatterParis.setTimeZone(timeZoneHZ); 31. System.out.println(dateFormatterParis.format(curDate)); 32. 33. dateFormatterParis.setTimeZone(timeZoneUS); 34. System.out.println(timeZoneUS.getDisplayName(localeEN)); 35. System.out.println(dateFormatterParis.format(curDate)); <3>System.getCurrentTime()
返回当前系统的时间与UTC 1970:01:01 00:00:00时间之间的毫秒差距
『伍』 java dataformat 的疑问
你格式化时间的时候错了~~
你应该去仔细看看api
我先给你一个简单的示例,你看回看就明白了:答
String time=new SimpleDateFormat("yyyy/MM/dd/hh/mm/ss").format(new Date());