おはようございます。私はチャットアプリケーションを作成しています。メッセージの日付を記入することを決めました。異なる国で日付が異なる必要があります。 2つの異なる国を取って、それらの違いを2時間と仮定しましょう.CountryXとCountryY。ユーザーがCountryXからメッセージを送信する時間は15:00とします。正確なタイムゾーン時間をサーバーに保存します。 :00としてCountryXを送信します。2番目のユーザーはCountryXのメッセージをCountryXから2時間後に受信します。基本的にCountryYに表示する必要がある時間は17:00にする必要があります。これは問題です。正しいことを示すためにローカルに知られているタイムゾーンを使っていますか?私はグーグルで多くをしましたが、私が思いついたのは、正確な国の時刻を取得し、CountryXを変換しなかったソリューションでした私はCountryYに現地時間を正確に表示するために現地時間に対応しています。助けてもらえますか?ありがとうございます。誰もが原因this.Iの苦しみのためにConvert受信した日付時刻を現地のタイムゾーン時間に設定します。Android
1
A
答えて
-1
は私の独自のロジックで自分のクラスを作成してしまっていると、それは完璧に動作し、時間
public class Time {
public static String getCurrentTime() {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DAY_OF_MONTH);
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
String finalFormat = year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second;
if (month < 10) {
String finalMonth = "0" + month;
finalFormat = year + "-" + finalMonth + "-" + day + " " + hour + ":" + minute + ":" + second;
}
return finalFormat;
}
public static String convertToLocalTime(String timeToConvert) {
SimpleDateFormat sourceFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sourceFormat.setTimeZone(TimeZone.getTimeZone(Constants.SERVER_TIME_ZONE));//where server time zone is the time zone of your server as defauul,E.X -America/Los_Angeles
Date parsed;
try {
parsed = sourceFormat.parse(timeToConvert);
} catch (ParseException e) {
e.printStackTrace();
return "";
}
TimeZone tz = TimeZone.getDefault();
SimpleDateFormat destFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
destFormat.setTimeZone(tz);
String result = destFormat.format(parsed);
return result;
}
public static String getTimeZone() {
return TimeZone.getDefault().getID();
}
}
関連する問題
- 1. タイムゾーンの日付時刻
- 2. タイムゾーン情報と抽出時間/日付時刻そのまま
- 3. UTCの日付時刻をEST現地時間に解析できません
- 4. 時間を現地時刻に変換した都市/州/国
- 5. カスタム時間と分で日付時刻を設定する
- 6. C#を使用してリモートコンピュータの日付、時刻、タイムゾーンを設定する
- 7. postgresqlで日付と時刻を設定しました
- 8. デバイスの現在の地域設定後の日付と時刻のフォーマット
- 9. JavaScript Dateオブジェクトは入力日時をUTC時刻または現地時刻として認識しますか?
- 10. Androidはタイムゾーン、時間と日付を変更します
- 11. fecha.js - 日付/時刻、特定の時刻
- 12. 現地時間でのタイムゾーン名
- 13. 日付+時刻と現在の日付と時刻を比較するには?
- 14. SSISが取る-1時間を現在の日付と時刻
- 15. 指定したタイムゾーンで現在時刻を取得する
- 16. asp.netのタイムゾーンに基づいて現地時間を設定する方法
- 17. Android - ネットワーク日付/時刻
- 18. Android:日付/時刻確認
- 19. 日付時刻の時間を加算して現在の時刻と比較する
- 20. 時間、分、秒を除いたOracleの現在の日付または時刻の日付
- 21. は、現在の日付時刻に
- 22. 特定の時刻に次または前日の日曜日の日時を設定します。
- 23. JavaのJoda時間を使用しているJavaの現在の日付時刻(時刻型)
- 24. 時間ピッカー現在の時刻と時刻ピッカー時刻の違いAndroidのアラーム
- 25. PHP間違った日付/時刻
- 26. UTC時刻を現地時刻に変換できません。
- 27. 時刻なしの日付
- 28. SQL Serverの特定のタイムゾーンの現地時間
- 29. 現在のutc日付時刻の既定の日付時間オフセット列を作成する方法
- 30. Objective-Cの時刻を現地時刻に変換する
と便利な方法の余分なボーナスカップルと呼ばれるlibにチェックアウト:PrettyTimeをチャットと現地時間帯のスーツ –
okはchecに何が表示されるかを確認します –
必要な方法が見つからないようです –