International Classes for Java And C++ Fact Sheet

Today's software market is a global market. You want to develop and maintain one application that supports a wide variety of national languages. The International Classes for Java and C++ provides extensible classes that help you write language-independent applications.

IBM 's object-oriented frameworks help you build truly international software. A rich, easy-to-use API makes handling the requirements of different countries and languages completely transparent to application developers.

Applications written using the International Classes are easily localized by changing simple data files, rather than modifying program code.

Implements Unicode 2.0

JavaSoft has integrated the International Classes for Java into JDK 1.1. These frameworks implement the Unicode 2.0 character set—the standard for international text—and provide a solid foundation for developing localizable applications, including the ability to adapt text, numbers, dates, currency, and sorting order to any country's conventional formats.

Platform-Independent C++

Parallel international frameworks for C++ allow you to use the same architecture for internationalization in both Java and C++ applications. These classes are written using a subset of C++ that is portable to a wide range of platforms and compilers.

Core Library

Unicode Strings
The Unicode String class in C++ provides the same capabilities as the Java String and StringBuffer classes. IBM also provides the latest Unicode 2.0.14 character classification and upper/lower casing.

Resources
Locales identify local conventions, and Resource Bundles access localized information. Data is supplied for 35 languages. This data is stored in resource files which may be easily extended.

Collation Library

Text Collation
Text collation supports language-sensitive comparison of strings, allowing for both alphabetical sorting and text searching of the full range of Unicode characters. Any features requiring collation can use the collation object associated with the current default locale, or with a specific locale (like France or Japan) if appropriate. You can completely customize collations at runtime, including merging two different languages.

Collation classes provide a choice of ordering strength (for example, whether to ignore case differences) and handle ignored, expanding, and contracting characters.

Decomposition Iterator
The decomposition iterator converts any Unicode string into a fully decomposed string, with either canonical conversions or compatibility conversions. Accents in the result are put in the correct Unicode canonical order.

Text Boundaries
Text boundary analysis enables programs to provide more intelligent text selection and line-wrapping, based on the natural language of the text. The boundary detection functions use table-driven state machines for high performance.

Formatting Library

Number Formatters
Number formatters convert binary numbers (integer or floating data types) into text strings for meaningful display. The number formatters:

  • Provide control over every aspect of the display, including separator characters, optional digits, maximum and minimum decimal and integer places, and optional prefixes and suffixes.
  • Can produce currency and percentage formats and can be extended to produce other formats.
  • Allow you to specify new formats with string patterns (as in spreadsheets) and can retrieve patterns from formats.
  • Can parse anything they can format, for use when converting text input into binary data.

Date Formatters
Date and time formatters convert internal time data into text strings for meaningful display. The date and time formatters:

  • Handle timezones and daylight savings adjustments.
  • Support multiple calendars.
  • Support European date fields such as the number of the week in the year.
  • Support definition of formats with string patterns and can retrieve patterns from formats.
  • Can parse anything they can format.

Message Formatters
Message formats are used to put together sequences of strings, numbers, dates, and other formats to create messages. This means localizers can modify resources to change the content, format, and order of any text as appropriate for any language.



JavaTM is a trademark of Sun Microsystems, Inc.

Other companies, products, and service names may be trademarks or service marks of others.

Copyright    Trademark



  International Classes Java Tools Java Home  
IBM HomeOrderEmployment