首页 > 其他 > 详细

日期小工具

时间:2014-02-27 15:00:39      阅读:432      评论:0      收藏:0      [点我收藏+]

package GUI.GameScene.Components.tools
{
    //import com.ryan.utils.StringTools;
    /**
     * 日期的工具类
     */
    public class DateTool
    {
        public static const TIME_OF_MINUTE:uint = 60 * 1000;
        public static const TIME_OF_HOUR:uint = 3600 * 1000;
        public static const TIME_OF_DAY:uint = TIME_OF_HOUR * 24;
        public static const TIME_OF_WEEK:uint = TIME_OF_DAY * 7;
        
        public static function getDateString(date:Date):String
        {
            return date.fullYear + "-" + (date.month + 1) + "-" + date.date;
        }
        
        //public static function getTimeString(date:Date):String
        //{
            //return NumTool.NumToFixedString(date.hours, 2) + ":" + NumTool.NumToFixedString(date.minutes, 2) + ":" + NumTool.NumToFixedString(date.seconds, 2);
        //}
        
        //public static function getString(date:Date):String
        //{
            //return getDateString(date) + " " + getTimeString(date);
        //}
        
        /**
         * 把字符串转化成日期
         * @param str 格式2011-08-08 18:16:49,数据库返回的格式
         * @return
         */
        //public static function fromString(str:String):Date
        //{
            //return new Date(StringTools.replace(str, "-", "/"));
        //}
        
        /**
         * 把秒数转成字符串,格式:1天1时1分1秒
         * @param    second
         * @return
         */
        public static function secondToDateString(s:int):String
        {
            if (s <= 0)
            {
                return "已过期";
            }
            var miliSecond:int = s * 1000;
            var day:int = miliSecond / TIME_OF_DAY;
            var hour:int = miliSecond % TIME_OF_DAY / TIME_OF_HOUR;
            var minute:int = miliSecond % TIME_OF_HOUR / TIME_OF_MINUTE;
            var second:int = miliSecond % TIME_OF_MINUTE / 1000;
            var str:String = "";
            var work:Boolean = false;
            if (work || day > 0)
            {
                str += day + "天";
                work = true;
            }
            if (work || hour > 0)
            {
                str += hour + "时";
                work = true;
            }
            if (work || minute > 0)
            {
                str += minute + "分";
                work = true;
            }
            if (work || second > 0)
            {
                str += second + "秒";
                work = true;
            }
            return str;
        }
        
        /**
         * 把日期转换成 “2012年10月10日”
         * @param    date
         * @return
         */
        public static function dateToString(date:Date):String
        {
            if (date == null)
            {
                return "";
            }
            return date.fullYear + "年" + (date.month + 1) + "月" + date.date + "日";
        }
        
        /**
         * 将一个日期转化为Date对象,格式20120428
         * @return
         */
        public static function dateToDate(date:String):Date
        {
            var y:int = int(date.substr(0, 4));
            var m:int = int(date.substr(4, 2)) - 1;
            var d:int = int(date.substr(6, 2));
            return new Date(y, m, d);
        }
        
        /**
         * 将秒数转化成时间字符串,格式为hh:mm:ss
         * @return
         */
        public static function secondToString(time:uint, showHour:Boolean = true):String
        {
            var h:uint = time / 3600;
            var m:uint = (time % 3600) / 60;
            var s:uint = time % 60;
            var hour:String = "";
            if (showHour || h > 0)
            {
                hour = h < 10 ? "0" + h : h.toString();
                hour += ":";
            }
            var min:String = m < 10 ? "0" + m : m.toString();
            var sec:String = s < 10 ? "0" + s : s.toString();
            return hour + min + ":" + sec;
        }
        
        /**
         * 将秒数转化成时间字符串,格式为hh:mm
         * @param    time
         * @return
         */
        public static function secondToStringHideSecond(time:uint, showHour:Boolean = true):String
        {
            var h:uint = time / 3600;
            var m:uint = (time % 3600) / 60;
            var hour:String = "";
            if (showHour || h > 0)
            {
                hour = h < 10 ? "0" + h : h.toString();
                hour += ":";
            }
            var min:String = m < 10 ? "0" + m : m.toString();
            return hour + min;
        }
        
        /**
         * 字符串转成时间
         * @param    str 格式 2012-10-10
         * @return    
         */
        public static function formatDate(str:String):Date
        {
            if (str != "")
            {
                str = str.substr(0, 10);
                var arr:Array = str.split("-");
                if (arr.length == 3)
                {
                    return new Date(int(arr[0]), int(arr[1] - 1), int(arr[2]));
                }
                else
                {
                    return null;
                }
            }
            else
            {
                return null;
            }
        }
        
        /**
         * 字符串转换成日期
         * @param    str格式:2014年1月1日0点0分
         * @return
         */
        public static function formatStringToDate(str:String):Date
        {
            var result:String = "";
            if (str == "" || str == null)
            {
                return null;
            }
            var minutes:int;
            var hours:int;
            var days:int;
            var months:int;
            var years:int;
            var pattern:RegExp = /[\u4e00-\u9fa5]/g;
            var newStr:String = str.replace(pattern, "/");
            //minutes = int(str.split("点")[1].split("分")[0]);
            //hours = int(str.split("日")[1].split("点")[0]);
            //days = int(str.split("月")[1].split("日")[0]);
            //months = int(str.split("年")[1].split("月")[0]);
            //years = int(str.split("年")[0]);
            var arr:Array = newStr.split("/");
            years = int(arr[0]);
            months = int(arr[1]);
            days = int(arr[2]);
            hours = int(arr[3]);
            minutes = int(arr[4]);
            var date:Date = new Date(years, months - 1, days, hours, minutes);
            return date;
        }
    }
}

日期小工具,布布扣,bubuko.com

日期小工具

原文:http://www.cnblogs.com/chinayfhuang/p/3569698.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!