Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2      [все]
 Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
как пример - есть в базе поле дата (на самом деле дататайм)
есть клиент, клиент - чудной. находится в России, но любит англицкий -использует англицкий хром.
как отобразить ему дату?
locale = navigator.browserLanguage || navigator.language || navigator.userLanguage;

говорит, что у него локаль en-US но, раз клиент чудной, любит локаль ru-RU
хотя этого не понимает - вводит дату dd.mm.yy. ну и хочет так видеть.

технически преобразовать не проблема и на сервере и на клиенте.
вопрос как это сделать? административно? заставить при регистрации выбирать ввод/отображение даты?
8 окт 19, 17:32    [21989709]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя,
Можно по типу выбора языка. Видел флаги стран вверху в уголке?
8 окт 19, 17:40    [21989717]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
Можно по типу выбора языка. Видел флаги стран вверху в уголке?
как вариант.
но это, как правило, говорит о том какой язык страницы выбрать. т.е. получается не совсем логично. но принято как вариант.
8 окт 19, 17:45    [21989722]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
andreykaT
Member

Откуда:
Сообщений: 2443
вадя
как пример - есть в базе поле дата (на самом деле дататайм)
есть клиент, клиент - чудной. находится в России, но любит англицкий -использует англицкий хром.
как отобразить ему дату?
locale = navigator.browserLanguage || navigator.language || navigator.userLanguage;

говорит, что у него локаль en-US но, раз клиент чудной, любит локаль ru-RU
хотя этого не понимает - вводит дату dd.mm.yy. ну и хочет так видеть.

технически преобразовать не проблема и на сервере и на клиенте.
вопрос как это сделать? административно? заставить при регистрации выбирать ввод/отображение даты?

а причем тут ты? пусть хром сам отрисует как надо. он то точно знает в какой он локали сидит. а ты как бэкенд нет.
ааа. ты ж наверное сам всё верстаешь на бэке да.
8 окт 19, 17:59    [21989734]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
chpasha
Member

Откуда:
Сообщений: 8631
вадя
говорит о том какой язык страницы выбрать

не обязательно, можно сразу в виде локали - обрати внимание на первые две записи. просто нужно объяснить пользователям, что они выбирают не просто язык, но и формат дат/чисел. Нет ну можно конечно отдельно хранить настройки для формата даты, числа и пр. но мне кажется такая гибкость не нужна без особой причины.

P. S. я кстати тоже всегда английские броузеры использую, так что прибивать локаль гвоздями просто на основании моего browserLanguage не комильфо

К сообщению приложен файл. Размер - 17Kb
8 окт 19, 18:01    [21989739]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8074
By the way:

К сообщению приложен файл. Размер - 30Kb
8 окт 19, 18:02    [21989740]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
Leonid Kudryavtsev,
ну это слишком административно ...

andreykaT
а причем тут ты? пусть хром сам отрисует как надо. он то точно знает в какой он локали сидит. а ты как бэкенд нет.
ааа. ты ж наверное сам всё верстаешь на бэке да. Картинка с другого сайта.
я так же думал, пока не установил анлицкого лиса.
chpasha , видимо на таком и придётся остановиться

есть таблица локаль - формат даты ?
8 окт 19, 18:43    [21989778]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
chpasha
Member

Откуда:
Сообщений: 8631
можешь себе сам сгенерить
DateFormat.getDateInstance
8 окт 19, 19:17    [21989804]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
chpasha
можешь себе сам сгенерить
DateFormat.getDateInstance
не понял
8 окт 19, 20:03    [21989835]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
chpasha
можешь себе сам сгенерить
DateFormat.getDateInstance
спасибо ,разбрался
8 окт 19, 20:12    [21989841]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
chpasha
можешь себе сам сгенерить
DateFormat.getDateInstance

vai__#Latn---> 21/01/1970
ksb_TZ---> 21/01/1970
ksh---> 21. 1. 1970
ur_IN---> ??/?/??
ln---> 21/1/1970
en_JE---> 21/01/1970
gsw_CH---> 21.01.70
ln_CF---> 21/1/1970
en_CX---> 21/01/1970
luy_KE---> 21/01/1970
pt---> 21/01/1970
en_AT---> 21/01/1970
gl---> 21/01/70
kkj_CM---> 21/01 1970
sr__#Cyrl---> 21.1.70.
yue_CN_#Hans---> 1970/1/21
es_GQ---> 21/1/70
kn_IN---> 21/1/70
ar_YE---> ???/??/????
to---> 21/1/70
en_SX---> 21/01/1970
ga---> 21/01/1970
qu---> 21/01/1970
ru_KZ---> 21.01.1970
en_TZ---> 21/01/1970
et---> 21.01.70
en_PR---> 1/21/70
mua---> 21/1/1970
ko_KP---> 70. 1. 21.
желательно
локаль - dd.mm.yyyy
локаль1 - mm.dd.yyyy
.....
уже готовое...
8 окт 19, 20:28    [21989846]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
chpasha
Member

Откуда:
Сообщений: 8631
вадя
уже готовое...

все им готовое подавай ;)
даю наколку ((SimpleDateFormat) dateFormat).toPattern()
8 окт 19, 20:40    [21989851]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
chpasha
все им готовое подавай ;)
даю наколку ((SimpleDateFormat) dateFormat).toPattern()
дай уже код...
что-то лень думать....
8 окт 19, 20:46    [21989853]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
chpasha
Member

Откуда:
Сообщений: 8631
в наказание код на стримах Картинка с другого сайта.

Arrays.stream(Locale.getAvailableLocales())
      .map(locale -> String.format("%s - %s", locale, ((SimpleDateFormat) DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, locale)).toPattern()))
      .forEach(System.out::println);
8 окт 19, 20:57    [21989857]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
желаемого получить не удалось.... куча форматов, и мешает формат времени..
попытался отсечь с помощью regex, куча вариантов слишком усложняет задачу
кому интересно и не лень
        final String regex = "([^,\\s]{1,})(.{1,})";
        final Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE);
        Locale[] locales = DateFormat.getAvailableLocales();
        for (Locale loc : locales) {
            String ss = String.format(loc, "%s",  ((SimpleDateFormat) DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, loc)).toPattern());
            Matcher matcher = pattern.matcher(ss);
            if (matcher.find()) {
                System.out.println(loc.toString() + "\t\t  " + matcher.group(1));
            }
        }
9 окт 19, 00:01    [21989946]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
chpasha
Member

Откуда:
Сообщений: 8631
напиши вместо getDateTimeInstance getDateInstance и будет тебе только дата - я ж думал время тоже надо
9 окт 19, 00:26    [21989955]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
как-то странно(внес в базу ) вот результат выборки для ru
d/M/yy pa_IN_#Guru,pa__#Guru
dd.MM.y ru,tt_RU,ru_KZ,ru_MD,ru_RU,ru_BY,ru_KG,ru_UA
dd.MM.yy os_RU
y-MM-dd cu_RU,ce_RU
yy/M/d sah_RU
9 окт 19, 00:48    [21989957]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя,
Если тебя время не интересует, то может и палочки тире в дате тоже?
Три варианта:
1. Флаги стран на все приложение
2. Личный кабинет (leonid выше скрин)
3. Только даты - выбрать очередность месяца в подформе.
9 окт 19, 08:26    [21990017]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 9586
4. Унифицированное yyyy-MM-dd
9 окт 19, 08:50    [21990036]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
Если тебя время не интересует, то может и палочки тире в дате тоже?
Три варианта:
1. Флаги стран на все приложение
2. Личный кабинет (leonid выше скрин)
3. Только даты - выбрать очередность месяца в подформе.

думал, что есть более простое решение...
наверно можно добавить
4. ввод только с помощью календаря, отображение dd-name-yyyy
9 окт 19, 08:55    [21990037]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
Basil A. Sidorov
4. Унифицированное yyyy-MM-dd
это хорошо когда день >12 числа(хотя надо знать что скрывается под MM)
9 окт 19, 08:57    [21990041]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
для справки
по getDateInstance
набирается 734 локали
38 вариантов отображения даты
9 окт 19, 09:07    [21990054]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя
4. ввод только с помощью календаря, отображение dd-name-yyyy
тогда нафига эта тема?
Что хочет юзверь?
9 окт 19, 09:09    [21990056]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
тогда нафига эта тема?
Что хочет юзверь?
да пока это на будущее.
ради спортивного интереса сделал календарик на js ( вместо jquery), ну и понеслись вопросы..
9 окт 19, 09:17    [21990061]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя,
Тогда надо учится у других
https://www.bellinibungalows.com
9 окт 19, 09:25    [21990071]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
Тогда надо учится у других
https://www.bellinibungalows.com
это решение уже я пробовал и увы ...
они определяют локаль с помощью типа такого
locale = navigator.browserLanguage || navigator.language || navigator.userLanguage;
и далее уже всё просто.
а если зайти из английского браузера - всё будет на англицком и язык и даты.
хотя я захожу со своего ip.
они ставят локаль по выбору флага.
но если весь сайт только на русском - а вход с английского браузера - выбор флага несколько не логичен.
9 окт 19, 10:03    [21990108]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя
но если весь сайт только на русском - а вход с английского браузера - выбор флага несколько не логичен.
переведи
9 окт 19, 10:12    [21990114]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
переведи
пока только надо на русском...
9 окт 19, 10:27    [21990123]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя
PetroNotC Sharp
переведи
пока только надо на русском...
ты постановку задачи переведи)))
Хромает у тебя постановщик.
Выше спросил - что надо юзверю. Ты начал про себя любимого.
9 окт 19, 10:39    [21990142]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
ты постановку задачи переведи)))
Хромает у тебя постановщик.
Выше спросил - что надо юзверю. Ты начал про себя любимого.

это просто исследование проблемы, поиск вариантов решения, серебряной пули.
9 окт 19, 10:46    [21990152]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя
это просто исследование проблемы
извини, но ПРОБЛЕМУ ты не озвучил.
И цели сделать мультиязычный сайт у тебя нет.
Постановщик хромает.
9 окт 19, 10:48    [21990154]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
все проблема озвучена в первом посте, и как подтверждение :
chpasha
P. S. я кстати тоже всегда английские броузеры использую, так что прибивать локаль гвоздями просто на основании моего browserLanguage не комильфо

как мне кажется самым "универсальным" будет вариант выбора юзером параметров типа как у Leonid Kudryavtsev, только не по кнопке с флагом, а каким-то другим значком.
9 окт 19, 10:57    [21990163]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя
все проблема озвучена в первом посте, и как подтверждение :
chpasha
P. S. я кстати тоже всегда английские броузеры использую, так что прибивать локаль гвоздями просто на основании моего browserLanguage не комильфо

как мне кажется самым "универсальным" будет вариант выбора юзером параметров типа как у Leonid Kudryavtsev, только не по кнопке с флагом, а каким-то другим значком.

Это?
21990017
9 окт 19, 11:05    [21990174]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
Это?
21990017
и типа этого.
9 окт 19, 11:07    [21990177]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя,
Они не универсалные. Они взаимосключающие Или.
А п.п. 1 ИЛИ п.п.2 сам выбирай.
9 окт 19, 11:08    [21990179]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя
PetroNotC Sharp
Это?
21990017
и типа этого.
ок.
Вопрос решен. Удачи!
9 окт 19, 11:09    [21990181]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
Вопрос решен.
можно сказать - да.
9 окт 19, 11:13    [21990188]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя,
В моём цветочном было так:
<fmt:setBundle basename="resources.lang-resour" />
9 окт 19, 11:29    [21990212]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
В моём цветочном было так:
когда определился с языком, форматом вывода - проблем нет, хотелось - автоматизировать этот акт.
9 окт 19, 11:33    [21990221]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя,
Логи. Откуда заходят. Вот тебе и языки.
9 окт 19, 11:36    [21990227]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
PetroNotC Sharp,
А браузер говорит какой язык ставить если нету греческого.
Все уже придумано.
9 окт 19, 11:37    [21990229]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
Логи. Откуда заходят. Вот тебе и языки.
смотрел я эти логи- скачал базу ip-место (говорят актуальность поддерживают) - но куча ip без локализации вообще - ни страны ни региона...
да и прокси работают
в браузерах есть https://learn.javascript.ru/intl
выведут что угодно
9 окт 19, 12:44    [21990291]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 2782
вадя,
По теме топика это выдача английского.
Всё.
9 окт 19, 12:51    [21990301]     Ответить | Цитировать Сообщить модератору
 Re: Java+web работа с датой, как решается  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 16870
PetroNotC Sharp
По теме топика это выдача английского.
как пример...
9 окт 19, 12:57    [21990311]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2      [все]
Все форумы / Java Ответить