У меня есть служба Java, которая должна возвращать информацию о дате/времени, которая отформатирована относительно текущего часового пояса пользователя (C#). Например, скажем, пользователь находится на западном побережье (мирное время), где он находится в 8:00 вечера. Они подключаются к службе, которая размещается на Среднем Западе (центральное время), где она находится в 10:00 вечера. Если пользователь должен был запросить сервер на текущее время, сервер должен ответить «8:00 вечера» для пользователя.Создайте java.util.Date из C# System.TimeZone
Моя мысль заключается в том, что клиентское приложение (C#) передаст информацию службе о ее текущем часовом поясе или смещении UTC. Затем Java будет создавать/форматировать все даты с использованием этого часового пояса.
Однако у меня возникли проблемы с поиском хорошего способа передать информацию C# System.TimeZone
таким образом, что Java может создавать и использовать объект java.util.TimeZone
. Я могу получить смещение UTC от C#, но не трехзначный код часового пояса. В Java я могу создать TimeZone из трехзначного кода, но не могу найти способ создать его из смещения UTC. Из всего, что я видел в Java, TimeZones создаются с кодом («PST») или страной/регионом («Америка/Лос-Анджелес»), и я не верю, что есть четкий способ получить часовой пояс в этом формате в C#.
Как это можно сделать?
Можете ли вы общаться с UTC и форматировать на клиенте? –
К сожалению, нет. В этом случае представление для клиента создается/отображается на сервере. – trebor