0

月曜日から始まる曜日に対応する1〜7のブール配列があります。

ここで、月曜日から始まる今日の曜日 (つまり、月曜日、火曜日など) を取得したいと考えています。私はこのコードを使用しています:

Calendar c = Calendar.getInstance();
int index = c.get(Calendar.DAY_OF_WEEK)-1;//array starts on 0 and DAY_OF_WEEK on 1

しかし、Calendar.getInstance() はローカライズされているため、ユーザーの場所によって、月曜日が 1 に対応するか 0 に対応するかを考えていました。 、DAY_OF_WEEKは変更されますか?

それを理解するのを手伝ってもらえますか?

ありがとう。

4

3 に答える 3

3

Calendar.get(DAY_OF_WEEK)ロケールが何であれ、常にCALENDAR.SUNDAYCalendar.MONDAY、 ...、のいずれかを返します。Calendar.SATURDAYそして、これらはそれぞれ 1、2、... 7 の定数です。

したがって、ブール配列が月曜日 (インデックス 0) で始まり、日曜日 (インデックス 6) で終わる場合、これが必要です。

int calendarDayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
int myDayOfWeek = calendarDayOfWeek - 2;
if (myDayOfWeek < 0) {
    myDayOfWeek += 7;
}
于 2013-06-02T13:17:32.340 に答える
1

今日の日付を取得したい場合は、 String を使用する必要があります。

ActionBar actionBar = getActionBar();
String dateString = (String) android.text.format.DateFormat.format("yyyy/MM/dd", new java.util.Date());
actionBar.setTitle(dateString); 

最初の行を削除したい場合は、アクションバーでこれを作成しました。

お役に立てば幸いです..

ここでも答えを見つけることができます:

Androidで日付と時刻をどのようにフォーマットしますか?

于 2013-06-02T13:11:37.127 に答える
0

今日の曜日を取得するには..

このようにしてみてください

SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
Date d = new Date();
String dayOfTheWeek = sdf.format(d);
于 2013-06-02T13:10:51.420 に答える