您的位置:首页 > 编程语言 > Java开发

java中calendar方法实现日期格式化

2014-10-29 11:04 375 查看
很多时候我们会遇到网页或网站的时间出席那一串字符串 像是这样“ java.util.GregorianCalendar[time=1414551076763,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2014,MONTH=9,WEEK_OF_YEAR=44,WEEK_OF_MONTH=5,DAY_OF_MONTH=29,DAY_OF_YEAR=302,DAY_OF_WEEK=4,DAY_OF_WEEK_IN_MONTH=5,AM_PM=0,HOUR=10,HOUR_OF_DAY=10,MINUTE=51,SECOND=16,MILLISECOND=763,ZONE_OFFSET=28800000,DST_OFFSET=0]”

似乎大部分人都看不懂!其实这是网站的开发者们粗心导致的。今天呢 我就告诉大家 在网站开发过程中应该如何避免这些问题!

public static void main(String[] args) {
Calendar c = Calendar.getInstance();

System.out.println(c);


很显然这是一个获取本机时间的一段代码,仅仅这样我们输出的就会是开始我写到的一串字符串。那对于游客来讲,他们你的网站已经失去了信心 不是写的不好 而是你太专业了!

so 我们必须要就这这个问题,那么究竟该如何额写呢?

其实很显然 ,之所以出现字符串是因为我满五年没有将输出格式转化为预先格式化的形式。

所以我们要在入口方法之前定义一个格式化日期格式的方法(datachange)

public static String datechange(Date date, String pattern) {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
String demo = sdf.format(date);
return demo;
}


那么写完datachange方法之后呢 我们就要对此方法进行调用 输出我们想要的格式。

整体代码灰常简单!如下:

package day1029;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class CalendarDemo {

public static String datechange(Date date, String pattern) { SimpleDateFormat sdf = new SimpleDateFormat(pattern); String demo = sdf.format(date); return demo; }

public static void main(String[] args) { Calendar c = Calendar.getInstance(); System.out.println(c);

String demo = datechange(c.getTime(), "yyyy年MM月dd日");

System.out.println(demo);

}
}


这样我们就可以输出标准格式啦!

执行效果如下

java.util.GregorianCalendar[time=1414551704830,areFieldsSet=true,areAllFieldsSet=true,lenient=true,
zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,
transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2014,MONTH=9,
WEEK_OF_YEAR=44,WEEK_OF_MONTH=5,DAY_OF_MONTH=29,DAY_OF_YEAR=302,DAY_OF_WEEK=4,DAY_OF_WEEK_IN_MONTH=5,
AM_PM=0,HOUR=11,HOUR_OF_DAY=11,MINUTE=1,SECOND=44,MILLISECOND=830,ZONE_OFFSET=28800000,DST_OFFSET=0]
2014年10月29日


小伙伴们 那里不会问哪里、 so easy!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: