Javaの一般的な時間ツールクラスの例


本論文の実例は、Javaの一般的な時間ツールクラスを説明する。皆さんに参考にしてあげます。具体的には以下の通りです。

package org.zhy.date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
/**
 *        
 *
 * @author zhengyi
 *
 */
public class DateUtils {
  //       
  public static final String DATE_PATTERN_YYYY_MM_DD = "yyyy-MM-dd"; // 2011-10-09
  public static final String yyyyMMddhhmmss = "yyyyMMddhhmmss";// 20111009100155
  public static final String yyyy_MM_ddhhMMss = "yyyy-MM-dd hh:MM:ss";// 2011-10-09
  // 10:01:55
  //     :      
  public static final int YEAR = 1;//  
  public static final int MONTH = 2;//  
  public static final int DAY = 3; //  
  public static final int HOUROFDAY = 4;//  
  public static final int MINUTE = 5;//  
  public static final int SECOND = 6;//  
  /**
   *          
   *
   * @param date
   *      :       
   * @param date_fomat
   *      :    
   * @return String:      
   */
  public static String DateToString(java.util.Date date, String date_fomat) {
    DateFormat df = new SimpleDateFormat(date_fomat);
    return df.format(date);
  }
  /**
   *           Date   
   *
   * @param year
   *      : 
   * @param month
   *      : 
   * @param dayOfMonth
   *      : 
   * @param hourOfDay
   *      : 
   * @param minute
   *      : 
   * @param second
   *      : 
   * @return
   */
  public static Date stringToDate(int year, int month, int dayOfMonth,
      int hourOfDay, int minute, int second) {
    GregorianCalendar gc = new GregorianCalendar(year, month, dayOfMonth,
        hourOfDay, minute, second);
    Date dt = gc.getTime();
    return dt;
  }
  /**
   *        Date   
   *
   * @param year
   *      : 
   * @param month
   *      : 
   * @param dayOfMonth
   *      : 
   * @return Date:   Date  
   */
  public static Date stringToDate(int year, int month, int dayOfMonth) {
    GregorianCalendar gc = new GregorianCalendar(year, month, dayOfMonth);
    Date dt = gc.getTime();
    return dt;
  }
  /**
   *      
   *
   * @param date
   * @return
   */
  public static boolean isLeapYear(Date date) {
    GregorianCalendar gc = gcToDate(date);
    return gc.isLeapYear(findYearByDate(date, YEAR));
  }
  /**
   *             
   *
   * @param date
   *      :       
   * @param type
   *      :     ,    
   * @return
   */
  public static int findYearByDate(Date date, int type) {
    Calendar cd = Calendar.getInstance();
    cd.setTime(date);
    int number=0;
    switch (type) {
      case YEAR :
        number= cd.get(Calendar.YEAR);
        break;
      case MONTH :
        number= cd.get(Calendar.MONTH);
        break;
      case DAY :
        number= cd.get(Calendar.DAY_OF_MONTH);
        break;
      case HOUROFDAY :
        number= cd.get(Calendar.HOUR_OF_DAY);
        break;
      case MINUTE :
        number= cd.get(Calendar.MINUTE);
        break;
      case SECOND :
        number= cd.get(Calendar.SECOND);
        break;
      default :
        number= 0;
    }
    return number;
  }
  /**
   *     , Date     GregorianCalendar        
   *
   * @param date
   * @return
   */
  private static GregorianCalendar gcToDate(Date date) {
    GregorianCalendar gc = new GregorianCalendar();
    gc.setTime(date);
    return gc;
  }
}
PS:ここでは日付と日数を計算するオンラインツールをいくつか紹介します。
オンライン日付/日数計算機:
http://tools.jb51.net/jisuanqi/date_jisuanqi
オンラインのカレンダー:
http://tools.jb51.net/bianmin/wannianli
オンライン陰暦/太陽暦変換ツール:
http://tools.jb51.net/bianmin/yinli2yangli
Unixタイムスタンプ(timestamp)変換ツール:
http://tools.jb51.net/code/unixtime
java関連の内容についてもっと興味がある読者は、当駅のテーマを調べてもいいです。「java日付と時間操作テクニックのまとめ」、「Javaデータ構造とアルゴリズム教程」、「Java操作DOMノード技術のまとめ」、「Javaキャッシュ操作テクニックのまとめ
本論文で述べたように、皆さんのjavaプログラムの設計に役に立ちます。