码迷,mamicode.com
首页 > 其他好文 > 详细

日期 日历 格式化 解析 时区 地区 示例

时间:2016-05-02 00:32:01      阅读:742      评论:0      收藏:0      [点我收藏+]

标签:


SimpleDateFormat 格式化Date
System.out.println(SimpleDateFormat.getInstance().format(new Date()));//16-5-1 下午7:47
System.out.println(SimpleDateFormat.getDateInstance().format(new Date()));//2016-5-1
System.out.println(SimpleDateFormat.getTimeInstance().format(new Date()));//19:46:04
System.out.println(SimpleDateFormat.getDateTimeInstance().format(new Date()));//2016-5-1 19:45:10
System.out.println(new SimpleDateFormat("yyyy.MM.dd a HH:mm:ss", Locale.getDefault()).format(new Date()));//2016.05.01 下午 22:29:46
System.out.println(new SimpleDateFormat("M月d日 m分 第D天 H点(ah点) s秒S微秒").format(new Date()));//5月1日 57分 第122天 22点(下午10点)  33秒95微秒
System.out.println(new SimpleDateFormat("z(zzzz) Gyy年第w周 M月第W周 E").format(new Date()));//CST(中国标准时间) 公元16年第19周 5月第1周 星期日

SimpleDateFormat 解析Date
public class Test {
    public static void main(String[] args) {
        System.out.println();//61天
        int dayInterval = (intgetDay("12-11-2""y-M-d""2012年9.2""y年M.d");
        if (dayInterval != -1) System.out.println("相隔"+dayInterval+"天");
        else  System.out.println("抱歉,解析出现错误");
    }
    //计算两个日期间相差几天
    public static long getDay(String dateStr1, String sFormat1, String dateStr2, String sFormat2) {
        try {
            Date date1 = new SimpleDateFormat(sFormat1).parse(dateStr1);
            Date date2 = new SimpleDateFormat(sFormat2).parse(dateStr2);
            Long time = Math.abs(date1.getTime() - date2.getTime());
            return time / 1000 / 60 / 60 / 24;
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return -1;
    }
}

Calendar 日历类
Calendar calendar = Calendar.getInstance();
//年月日
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;//这里一定要注意:0代表1月,11表示十二月,12表示下一年的1月…
int day = calendar.get(Calendar.DAY_OF_MONTH);
//上下午
int apNum = calendar.get(Calendar.AM_PM);//0代表上午,1代表下午
String apStr = "上午";
if (apNum == 1) apStr = "下午";
//时分秒
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);//由 0 至 61 的整数表示,值 60 和 61 只对闰秒发生
//星期
String[] weeks = { "日""一""二""三""四""五""六" };
int weekNum = calendar.get(Calendar.DAY_OF_WEEK);//1表示星期日,7表示星期六
String weekStr = "星期" + weeks[weekNum - 1];
String string = year + "年" + month + "月" + day + "日" + " " + weekStr + " " + apStr + hour + ":" + minute + ":" + second;
System.out.println(string);//2016年5月1日 星期日 下午23:27:26

TimeZone 时区类
TimeZone timeZone = TimeZone.getDefault();//获取此主机的默认 TimeZone
System.out.println(timeZone.getDisplayName());//中国标准时间
System.out.println(timeZone.getDisplayName(true, TimeZone.SHORT));//CDT。如果为 true,则返回夏令时名称
System.out.println(timeZone.getDisplayName(false, TimeZone.SHORT));//CST
System.out.println(timeZone.getDisplayName(true, TimeZone.LONG));//中国夏令时
System.out.println(timeZone.getDisplayName(false, TimeZone.LONG));//中国标准时间
System.out.println(timeZone.getID());//Asia/Shanghai
System.out.println(timeZone.getRawOffset() / 1000 / 60 / 60);//8。也就是8小时,因为我们是在东八区
String[] ids = TimeZone.getAvailableIDs();//获取受支持的所有可用 ID
System.out.println(Arrays.toString(ids));

Locale 地区类
Locale locale = Locale.getDefault();//获得此 Java 虚拟机实例的当前默认语言环境值
System.out.println(locale.getCountry());//CN。国家
System.out.println(locale.getDisplayCountry());//中国
System.out.println(locale.getLanguage());//zh。语言
System.out.println(locale.getDisplayLanguage());//中文
System.out.println(Locale.CHINESE);//zh。代表中文环境
System.out.println(Locale.CHINA);//zh_CN。代表中国大陆的中文环境
System.out.println(Locale.TAIWAN);//zh_TW。代表中国台湾的中文环境
System.out.println(Locale.ENGLISH);//en。代表英文环境
System.out.println(Locale.US);//en_US。代表美国的英文环境
System.out.println(Locale.UK);//en_GB。代表英国的英文环境
Locale[] locales = Locale.getAvailableLocales();//返回所有已安装语言环境的数组
System.out.println(Arrays.toString(locales));

zh_SG和en_SG都代表新加坡
[ms_MY, ar_QA, is_IS, fi_FI, pl, en_MT, it_CH, nl_BE, ar_SA, ar_IQ, es_PR, es_CL, fi, de_AT, da, en_GB, es_PA, sr, ar_YE, mk_MK, mk, en_CA, vi_VN, nl_NL, es_US, zh_CN, es_HN, en_US, fr, th, ar, ar_MA, lv, de, in_ID, hr, en_ZA, ko_KR, ar_TN, in, ja, sr_RS, be_BY, zh_TW, ar_SD, pt, is, ja_JP_JP_#u-ca-japanese, es_BO, ar_DZ, ms, es_AR, ar_AE, fr_CA, sl, es, lt_LT, sr_ME_#Latn, ar_SY, ru_RU, fr_BE, es_ES, bg, iw_IL, sv, en, iw, da_DK, es_CR, zh_HKzh, ca_ES, th_TH, uk_UA, es_DO, es_VE, pl_PL, ar_LY, ar_JO, it, uk, hu_HU, ga, es_GT, es_PY, bg_BG, hr_HR, sr_BA_#Latn, ro_RO, fr_LU, no, lt, en_SG, es_EC, sr_BA, es_NI, sk, ru, mt, es_SV, nl, hi_IN, et, el_GR, sl_SI, it_IT, ja_JP, de_LU, fr_CH, mt_MT, ar_BH, sq, vi, sr_ME, pt_BR, no_NO, el, de_CH, zh_SG, ar_KW, ar_EG, ga_IE, es_PE, cs_CZ, tr_TR, cs, es_UY, en_IE, en_IN, ar_OM, sr_CS, ca, be, sr__#Latn, ko, sq_AL, pt_PT, lv_LV, sr_RS_#Latn, sk_SK, es_MX, en_AU, no_NO_NY, en_NZ, sv_SE, ro, ar_LB, de_DE, th_TH_TH_#u-nu-thai, tr, es_CO, en_PH, et_EE, el_CY, hu, fr_FR]





日期 日历 格式化 解析 时区 地区 示例

标签:

原文地址:http://www.cnblogs.com/baiqiantao/p/5451558.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!