おはようございます。私はチャットアプリケーションを作成しています。メッセージの日付を記入することを決めました。異なる国で日付が異なる必要があります。 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. 日付/時刻をUTCで保存し、現地時間と異なるタイムゾーンでのフォーマットを表示します。
- 2. タイムゾーンの日付時刻
- 3. タイムゾーン情報と抽出時間/日付時刻そのまま
- 4. UTCの日付時刻をEST現地時間に解析できません
- 5. 時間を現地時刻に変換した都市/州/国
- 6. カスタム時間と分で日付時刻を設定する
- 7. カレンダーまたは日付時刻で日付を設定する
- 8. AndroidでUTCの日付を現地時間に変換しますか?
- 9. C#を使用してリモートコンピュータの日付、時刻、タイムゾーンを設定する
- 10. postgresqlで日付と時刻を設定しました
- 11. デバイスの現在の地域設定後の日付と時刻のフォーマット
- 12. 新しい日付時刻ですが現在の時刻は
- 13. 日付と時刻のタイムゾーンの処理
- 14. Androidはタイムゾーン、時間と日付を変更します
- 15. JavaScript:タイムゾーンを使用してUTC時刻を現地時間に変換します
- 16. JavaScript Dateオブジェクトは入力日時をUTC時刻または現地時刻として認識しますか?
- 17. 送信者のローカル時刻に日付を設定する
- 18. fecha.js - 日付/時刻、特定の時刻
- 19. 現地時間でのタイムゾーン名
- 20. 日付+時刻と現在の日付と時刻を比較するには?
- 21. タイムゾーン付きのタイムスタンプから現地時間を抽出します
- 22. SSISが取る-1時間を現在の日付と時刻
- 23. URL特定のサーバー時刻または現地時刻の後にリダイレクト
- 24. asp.netのタイムゾーンに基づいて現地時間を設定する方法
- 25. 指定したタイムゾーンで現在時刻を取得する
- 26. Android:日付/時刻確認
- 27. Android - ネットワーク日付/時刻
- 28. データベースからのタイムゾーン情報を使用してUTC時刻を現地時刻に変換する
- 29. エポック時間と現地時間、異なるタイムゾーン
- 30. 時刻を現地時間に変換する
と便利な方法の余分なボーナスカップルと呼ばれるlibにチェックアウト:PrettyTimeをチャットと現地時間帯のスーツ –
okはchecに何が表示されるかを確認します –
必要な方法が見つからないようです –