|
|
Данные, зависящие от локализации, должны быть подогнаны в соответствии с соглашениями языка и региона конечного пользователя. Текст, выводимый пользовательским интерфейсом, - наиболее очевидный пример данных, зависящих от локализации. Например, приложение с кнопкой Cancel в США будет иметь кнопку Abbrechen в Германии. В других странах эта кнопка будет иметь другие метки. Очевидно, что вы не захотите жестко зашивать эту метку кнопки. Разве не приятно будет, если вы сможете автоматически получать правильную метку для даннойLocale? К счастью, вы можете это сделать, обеспечив выделение объектов, зависящих от локализации вResourceBundle.В этом уроке вы узнаете, как создавать и обращаться к объектам
ResourceBundle. Если вы торопитесь посмотреть некоторые примеры кода, загляните вперед и посмотрите последние два раздела в этом уроке. Затем вы вернетесь назад к первым двум разделам, чтобы получить некоторую концептуальную информацию об объектахResourceBundle.
ОбъектыResourceBundleсодержат объекты, зависящие от локализации. Когда вы нуждаетесь в объектах, зависящих от локализации, вы выбираете их изResourceBundle, который возвращает объект, который соответствуетLocaleконечного пользователя. Этот раздел объясняет, какResourceBundleсоотносится сLocale, и описывает подклассыResourceBundle.
Прежде чем вы создадите свои объектыResourceBundle, вы должны проделать небольшое планирование. Прежде всего, определите объекты, зависящие от локализации, в вашей программе. Затем организуйте их в категории и сохраните их в разных объектахResourceBundleсоответственно.
Если ваше приложение содержит объектыString, которые нуждаются в переводе на разные языки, вы можете записать эти объектыStringвPropertyResourceBundle, который поддерживается рядом файлов свойств. Поскольку файлы свойств являются обычными текстовыми файлами, они могут создаваться вашими переводчиками. Вы не должны менять исходный код. В этом разделе вы изучите, как устанавливать файлы свойств, которые поддерживаютPropertyResourceBundle.
КлассListResourceBundle, который является подклассомResourceBundle, управляет объектами, зависящими от локализации, в списке.ListResourceBundleподдерживается файлом класса, что означает, что вы должны создавать и компилировать новый исходный файл всякий раз, когда требуется поддержка дополнительнойLocale. Однако объектыListResourceBundleполезны потому, что, в отличие от файлов свойств, они могут хранить тип объекта, зависящего от локализации. Проходя по шагам через программный пример, этот раздел демонстрирует, как использоватьListResourceBundle.
|
|
Copyright 1995-2002 Sun Microsystems, Inc. All rights reserved.