⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dateutility.java

📁 采用JAVA开发
💻 JAVA
📖 第 1 页 / 共 2 页
字号:

        case 1: // '\001'
            dates = 31;
            break;

        case 2: // '\002'
            if(year % 400 == 0 || year % 4 == 0 && year % 100 != 0)
                dates = 29;
            else
                dates = 28;
            break;

        case 3: // '\003'
            dates = 31;
            break;

        case 4: // '\004'
            dates = 30;
            break;

        case 5: // '\005'
            dates = 31;
            break;

        case 6: // '\006'
            dates = 30;
            break;

        case 7: // '\007'
            dates = 31;
            break;

        case 8: // '\b'
            dates = 31;
            break;

        case 9: // '\t'
            dates = 30;
            break;

        case 10: // '\n'
            dates = 31;
            break;

        case 11: // '\013'
            dates = 30;
            break;

        case 12: // '\f'
            dates = 31;
            break;
        }
        return dates;
    }//eof getLastDate(String)
    
    /**
     * ???????¨?????ò????????????
     * @return java.lang.String
     * @param periodType int
     *     0±í?????? 1±í????·?
     * @param year java.lang.String
     * @param period java.lang.String
     */
    public static String[] getDate(int periodType, String year, String period) {

        String[] dates = {getCurrentDate(), getCurrentDate()};

        // Validate
        if (periodType != 0 && periodType != 1) {
            // Error period type
            System.err.println("Error period type in DateUtil.getDate().");
            System.err.println("Period type(0-1):" + periodType);
            return dates;
        }

        int intYear = 2000;
        try {
            intYear = Integer.parseInt(year);
            if (intYear < 1900 || intYear > 3000) {
                System.err.println("Invalid year in DateUtil.getDate().");
                System.err.println("Year(1900-3000):" + year);
                return dates;
            }
        } catch (NumberFormatException e) {
            System.err.println("Invalid year in DateUtil.getDate().");
            System.err.println("Year:" + year);
            return dates;
        }

        int intPeriod = 1;
        try {
            intPeriod = Integer.parseInt(period);
            if (periodType == 0) {
                // Season
                if (intPeriod < 1 || intPeriod > 4) {
                    System.err.println("Invalid season in DateUtil.getDate().");
                    System.err.println("Season(1-4):" + period);
                    return dates;
                }
            } else {
                // Month
                if (intPeriod < 1 || intPeriod > 12) {
                    System.err.println("Invalid month in DateUtil.getDate().");
                    System.err.println("Month(1-12):" + period);
                    return dates;
                }
            }
        } catch (NumberFormatException e) {
            System.err.println("Invalid period in DateUtil.getDate().");
            System.err.println("Period:" + period);
            return dates;
        }

        if (periodType == 0) {
            // Season
            switch (intPeriod) {
                case 1 :
                    dates[0] = year + "-1-1";
                    dates[1] = year + "-3-31";
                    break;
                case 2 :
                    dates[0] = year + "-4-1";
                    dates[1] = year + "-6-30";
                    break;
                case 3 :
                    dates[0] = year + "-7-1";
                    dates[1] = year + "-9-30";
                    break;
                case 4 :
                    dates[0] = year + "-10-1";
                    dates[1] = year + "-12-31";
                    break;
            }
        } else {
            // Month
            switch (intPeriod) {
                case 1 :
                    dates[0] = year + "-1-1";
                    dates[1] = year + "-1-31";
                    break;
                case 2 :
                    dates[0] = year + "-2-1";
                    if ((intYear % 400 == 0) || ((intYear % 4 == 0) && (intYear % 100 != 0))) {
                        dates[1] = year + "-2-29";
                    } else {
                        dates[1] = year + "-2-28";
                    }
                    break;
                case 3 :
                    dates[0] = year + "-3-1";
                    dates[1] = year + "-3-31";
                    break;
                case 4 :
                    dates[0] = year + "-4-1";
                    dates[1] = year + "-4-30";
                    break;
                case 5 :
                    dates[0] = year + "-5-1";
                    dates[1] = year + "-5-31";
                    break;
                case 6 :
                    dates[0] = year + "-6-1";
                    dates[1] = year + "-6-30";
                    break;
                case 7 :
                    dates[0] = year + "-7-1";
                    dates[1] = year + "-7-31";
                    break;
                case 8 :
                    dates[0] = year + "-8-1";
                    dates[1] = year + "-8-31";
                    break;
                case 9 :
                    dates[0] = year + "-9-1";
                    dates[1] = year + "-9-30";
                    break;
                case 10 :
                    dates[0] = year + "-10-1";
                    dates[1] = year + "-10-31";
                    break;
                case 11 :
                    dates[0] = year + "-11-1";
                    dates[1] = year + "-11-30";
                    break;
                case 12 :
                    dates[0] = year + "-12-1";
                    dates[1] = year + "-12-31";
                    break;
            }
        }

        return dates;
    }//eof getDate(int,String,String)
    
    /*
     * 获取ORACLE的默认日期格式时间(add in 2003-11-21 @author:windy)
     * @param String aDate 如:"2003-1-3"
     * @return String 如:"03-一月-2003 12:00:00 AM"
     */
    public static String getOracleDefaultDate(String aDate){
        String returnDate = new String();
        DateFormat dateFormat = DateFormat.getDateInstance();
        Date date1 = null;
        try
        {
            String[] dateArray = aDate.split("-");
            String thisYear = dateArray[0];
            int date1Month = Integer.parseInt(dateArray[1]);
            int date1Date = Integer.parseInt(dateArray[2]);
            String thisDate = new String();
            if(date1Date < 10){
                thisDate = "0".concat(String.valueOf(date1Date));
            }else{
                thisDate = String.valueOf(date1Date);
            }
            String thisMonth = new String();
            switch(date1Month){
                case 1:
                    thisMonth = "一月";
                    break;
                case 2:
                    thisMonth = "二月";
                    break;
                case 3:
                    thisMonth = "三月";
                    break;
                case 4:
                    thisMonth = "四月";
                    break;
                case 5:
                    thisMonth = "五月";
                    break;
                case 6:
                    thisMonth = "六月";
                    break;
                case 7:
                    thisMonth = "七月";
                    break;
                case 8:
                    thisMonth = "八月";
                    break;
                case 9:
                    thisMonth = "九月";
                    break;
                case 10:
                    thisMonth = "十月";
                    break;
                case 11:
                    thisMonth = "十一月";
                    break;
                case 12:
                    thisMonth = "十二月";
                    break;
            }
            returnDate = thisDate.concat("-").concat(thisMonth).concat("-").concat(thisYear).concat(" 12:00:00 AM");
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
        return returnDate;      
    }//eof getOracleDefaultDate(String)
    /*
     * 获取中国地区的星期几(add in 2004-1-13 @author:windy)
     * @param int intNum
     * @return String 如:"星期一"
     */
    public static String getDayDesc(int intNum){
        String rn = "";
        if(intNum<0 || intNum>6){
            rn = "";
        }
        switch(intNum){
            case 0:
                rn = "星期一";
                break;
            case 1:
                rn = "星期二";
                break;
            case 2:
                rn = "星期三";
                break;
            case 3:
                rn = "星期四";
                break;
            case 4:
                rn = "星期五";
                break;
            case 5:
                rn = "星期六";
                break;
            case 6:
                rn = "星期日";
                break;                
        }
        return rn;
    } 
    //test
    public static void main(String[] args){
        String testDate = "2003-11-22";
        //System.out.println(DateUtility.getOracleDefaultDate("2003-11-22"));
        System.out.println(DateUtility.getDate(testDate,-1));
        System.out.println(DateUtility.getDate("2003-4-5",-1));
    }//eof main
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -