AndroidのDateUtils.formatDateRangeを使って時刻の多言語化表示をしています。
この時、日本語だと同じ日付と違う日付で出力フォーマットが違ってしまいます。
具体的には時刻が時分の表記とコロンと2種類出てしまいます。
どちらか一方に寄せたいのですがどのようにすれば良いかご教授願います。
環境
Android9 エミュレータ
Kotlin 1.3.72
動作確認コード
val today = Date() val twoHoursLater = Calendar.getInstance().run { add(Calendar.HOUR_OF_DAY, 2) time } val tomorrow = Calendar.getInstance().run { add(Calendar.DAY_OF_MONTH, 1) time } val nextYear = Calendar.getInstance().run { add(Calendar.YEAR, 1) time } val hourRangeString = DateUtils.formatDateRange( this, today.time, twoHoursLater.time, DateUtils.FORMAT_SHOW_DATE or DateUtils.FORMAT_SHOW_TIME ) val dayRangeString = DateUtils.formatDateRange( this, today.time, tomorrow.time, DateUtils.FORMAT_SHOW_DATE or DateUtils.FORMAT_SHOW_TIME ) val yearRangeString = DateUtils.formatDateRange( this, today.time, nextYear.time, DateUtils.FORMAT_SHOW_DATE or DateUtils.FORMAT_SHOW_TIME ) Log.i("DateFormatter", hourRangeString) Log.i("DateFormatter", dayRangeString) Log.i("DateFormatter", yearRangeString)
言語が日本語の場合
4月29日 13時37分~15時37分 4月29日 13:37~4月30日 13:37 2020年4月29日 13:37~2021年4月29日 13:37
言語が英語の場合
April 29, 1:37 – 3:37 PM April 29, 1:37 PM – April 30, 1:37 PM April 29, 2020, 1:37 PM – April 29, 2021, 1:37 PM
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。