iOS に続いて, Java(Android)用に, 時間まわりのラリブラリを書きました
GitHubで公開しています
JavaDatekit
build.xmlを準備しておきましたので, ant をお持ちの方は,
ant
で, dst/datekit.jar が作成されますので
PureJavaでコーディングしていますので, Androidでも動きます
概要
時間操作に関わる操作を, Builderでまとめてみました.
基本的な操作はCalendarクラスを使って, Date, Calendarの相互の変換などを入れました
Builderになっている部分で操作を行い, getのメソッドでデータを操作もしくは取得, format系のメソッドでString形式のデータを取得します
使い方
ソースコードをまるごとコピーする
もしくは, antを使って, datekit.jar を作成してそれをライブラリとしてプロジェクトにコピーします(BuildPathを通します)
メソッド
コンストラクタ
- public DateBuilder()
初期化です現在時刻で初期化します
- public DateBuilder( TimeZone zone )
TimeZoneを使って初期化します
- public DateBuilder( Date date )
Dateを使って初期化します
builder系
- public DateBuilder on( Date date )
Dateインスタンスをセットします
- public DateBuilder addDay( int day )
day分だけ日にちを足します
- public DateBuilder subDay( int day )
day分だけ日にちを引きます
- public DateBuilder begin()
日にちの最初00:00:00を取得します
- public DateBuilder end()
日にちの最後23:59:59を取得します
- public DateBuilder firstDateOfMonth()
現在月の最初の日を取得します
- public DateBuilder lastDayOfMonth()
現在月の最後の日を取得します
- public DateBuilder nextMonthFirst()
次の月の最初の日を取得します
- public DateBuilder getFromYMD( int year, int month, int day )
年, 月, 日をセットします
- public DateBuilder getDayofDay( int day )
曜日をセットします 0 日曜日, 6 土曜日
- public DateBuilder getGMT()
GMTのタイムゾーンをセットします
get系
- public int getYear()
年を取得します
- public int getMonth()
月を取得します
- public int getHour()
時間を取得します(24h)
- public int getSecond()
秒を取得します
- public Date getTime()
Dateインスタンスを取得します
- public Calendar getCal()
Calendarインスタンスを取得します
- public boolean isWeekDay()
WeekDay(ビジネスデイ)の判定をします
- public boolean isWeekEnd()
週末かどうかを判定します
- public boolean before ( Calendar calendar )
引数calendarとBuilderに保持している日時を比較して, 保持しているものが前ならtrueを返します
- public boolean before ( Date date )
引数dateとBuilderに保持している日時を比較して, 保持しているものが前ならtrueを返します
- public boolean after ( Calendar calendar )
引数calendarとBuilderに保持している日時を比較して, 保持しているものが後ならtrueを返します
- public boolean after ( Date date )
引数dateとBuilderに保持している日時を比較して, 保持しているものが後ならtrueを返します
- public DateBuilder copy()
DateBuilderをコピーして新しいDateBuilderを作成します
format系
Builderで持っている情報をStringで返します
- public String formatYear()
yyyy形式で返します
- public String formatMonth()
MM形式で返します
- public String formatDay()
dd形式で返します
- public String formatA()
yyyy-MM-dd形式で返します
- public String formatB()
yyyy/MM/dd形式で返します
- public String formatFull()
yyyy/MM/dd HH:mm:ss形式で返します
サンプル
テストより
年, 月, 日をセットします
DateBuilder builder = new DateBuilder();
builder.getFromYMD(2014, 3, 11);
System.out.println(builder.formatA()); // 2014/03/11
2014/03/11の00:00:00をCalendarインスタンスで取得します
Calendar cal = builder.getFromYMD(2014, 3, 11).begin().getCal();
GMT
DateBuilder builder = new DateBuilder(TimeZone.getTimeZone("GMT"));
0 件のコメント:
コメントを投稿