Xperiaでカレンダーに値をセットしてゲットすると値がずれることがある。例えば 1995/6/5 を new GregorianCalendar(1995, 6 - 1, 5) として、Calendar.DATE をgetすると 4 が返ってくる。ちょっと調べてみたら、1976/5/3 から 2000/9/17 の期間はずれる。1942年あたりもずれる。同じコードをエミュレータで実行してみるとずれない。DATEをセットする前にゲットするとずれない。
GregorianCalendar calendar = new GregorianCalendar();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month - 1);
// Xperiaで日にちがずれる。
calendar.get(Calendar.DATE);
calendar.set(Calendar.DATE, day);
0 件のコメント:
コメントを投稿