Android日期格式转换(将日期转为周期)

最近自己的项目中遇到一个需求,需要将标准的日yyyy-MM-dd转换为具体的周期,即星期几。通过查找资料发现,Android中已经为我们提供了强大的日期工具Calendar类,我们可以通过该类就能快速实现日期之间的转化。这里,我已经将其封装成了一个工具类,并提供类汉/英两种周期格式的转化:

/**
 * Created by moos on 2018/1/6.
 * func:时间的工具类
 */

public class TimeUtils {

    /**
     * func:通过具体日期来获得星期几(中式)
     * @param date 标准日期
     * @return  星期几
     */
    public static String getChineseWeekDay(String date){
        String weekTime = "星期";
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        Calendar c = Calendar.getInstance();
        try {

            c.setTime(format.parse(date));

        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        switch (c.get(Calendar.DAY_OF_WEEK)){
            case 1:

                weekTime += "日";
                break;
            case 2:

                weekTime += "一";
                break;
            case 3:

                weekTime += "二";
                break;
            case 4:

                weekTime += "三";
                break;
            case 5:

                weekTime += "四";
                break;
            case 6:

                weekTime += "五";
                break;
            case 7:

                weekTime += "六";
                break;

            default:
                throw new IllegalArgumentException("Illegal date format");

        }
        return weekTime;

    }

    /**
     * func:通过具体日期来获得星期几(英式)
     * @param date 标准日期
     * @return  星期几
     */
    public static String getEnglishWeekDay(String date){
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        Calendar c = Calendar.getInstance();
        try {

            c.setTime(format.parse(date));

        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        switch (c.get(Calendar.DAY_OF_WEEK)){
            case 1:

                return "Sunday";
            case 2:

                return "Monday";
            case 3:

                return "Tuesday";
            case 4:

                return "Wednesday";
            case 5:

                return "Thursday";
            case 6:

                return "Friday";
            case 7:

                return "Saturday";

            default:
                throw new IllegalArgumentException("Illegal date format");

        }

    }
}

代码不多,使用起来很方便,值得注意的是,参数只能是标准格式的日期字符串,大家可以根据需求自行设定,代码部分理解不难,这里不多做讲解了。大家有任何问题或者建议,欢迎留言或者加群讨论,谢谢.

Android集中营

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值