Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
169 / 66 / 15
Регистрация: 24.03.2013
Сообщений: 467
Записей в блоге: 1

Поддержка нескольких языков в приложении

29.11.2016, 02:07. Показов 941. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем, сижу такой пилю проектик, как норм пацан.
И тут кароч прилетает идея: "Давай забабахаем мультиязычность, ну типа юзеры смогут менять язык интерфейса"
Ну я такой "Да ващэ не проблема, щас за 5 минут сделаю" и следуя всем канонам проектирования и разработки проги, вытащил всю эту язычную кухню в отдельные файлы с языками (RU, ENG) и LanguageResourceProvider, который супер-пупер смарт, решает и разруливает все почем зря. Ну ясное дело, что за 5 минут запилить такое не получилось, то ли я совсем еще зеленый, то ли не норм пацан. Терь 2 часа ночи, а проблема до сих пор не решена, мое чувство собственного достоинства медленно, но верно падает ниже <censored />.

В итоге вопрос как всю эту дребедень победить?

Входные данные:
Проект, который производит взаимодействие с пользователем через консоль.

Пользователь через командную строку запускает проект:
Bash
1
java -jar target/IM-full.jar
И что пользователь видит?
В консоли всякие нехорошие символы, прикрытые знаками "?"
Ожидается что там будут хорошие, добрые русские символы.

Файл, который содержит русский текст для интерфейса в кодировке UTF-8 [РИС 1]

Странно, почему-то когда текст был жестко захардкочен в код - этой проблемы не было.
В дебаггере если смотреть, тоже норм, т.е. в JVM - текст норм загружается [РИС 2]

Вот в консоли начинаются чудеса и никакие там chcp <encoding> - не помогает [РИС 3]



Выходной результат: Счастливый юзер :-)

Вот как эту проблему решить?
Более детально просмотреть проектик GitHub
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.11.2016, 02:07
Ответы с готовыми решениями:

JS+HTML5 Поддержка нескольких языков интерфейса
Здравствуйте! Недавно решил переписать своё приложение под Windows Store, и сразу застрял на вопросе: Как реализовать мультиязычный...

Поддержка языков
есть форма, на форме есть меню и лейбал. На лейбле текст &quot;мама&quot;, в меню есть закладка выбор языка, которая содержит два пункта:...

Поддержка других языков в командной строке
// Перемещено из темы: https://www.cyberforum.ru/cmd-bat/thread1179830.html Добрый вечер! Подскажите, как можно сделать поддержку...

3
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,667
Записей в блоге: 29
30.11.2016, 10:50
не, ну норм вроде пацанчик, а такие программы реализуешь в консоли, ты че а? Запили графу то, чтоб батя одобрял!
Если прям рогом уперся, то вот тут почитай, неплохо задвигают http://stackoverflow.com/quest... ut-println
1
169 / 66 / 15
Регистрация: 24.03.2013
Сообщений: 467
Записей в блоге: 1
30.11.2016, 13:00  [ТС]
Уважуха, Бро :-)

Я думал System.out - норм класс, типа сам догадается про кодировку, а он короч фраейр низкосортный
Решил эту проблему так
Java
1
PrintStream ps = new PrintStream(System.out, true, "UTF-8");
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,667
Записей в блоге: 29
30.11.2016, 18:51
тоже нормальный ход, респект
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.11.2016, 18:51
Помогаю со студенческими работами здесь

Поддержка скинов в приложении
Всем доброго времени суток! Извиняюсь, если поднимаю уже обсуждавшуюся тему, но поиском по форуму ничего не нашел. Может кто подскажет...

Подключение нескольких языков
Как правильно сделать структуру сайта на двух языках? На что нужно обратить внимание? Хочу сделать сайт на Укр и Русс языках,...

Использование нескольких языков совместно с C#
Ребята, я слышал что в С# можно использовать несколько языков, что например можно часть кода написать на С++ а часть на С#. Только на этом...

Поддержка нескольких запросво
Поддержка нескольких запросов. вычитл что PDO MYSQL поддерживает несколько запросов по сравнению с обычным методом. приведите пример. ...

Поддержка нескольких компиляторов
Привет. Хочу попробовать сделать следующее: В программе есть textEdti, кнопка и combobox, в котором можно выбрать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru