Java InternationalizationOn the Internet, there are almost no barriers against international commerce. Except for language. Unfortunately, most software is still written in English. Java Internationalization shows how to write software that is truly multi-lingual, using Unicode, a standard system that supports hundreds of character sets for most modern languages and many ancient ones. English-only software is already obsolete. Java Internationalization brings Java developers up to speed on the new generation of software development: writing software that is no longer limited by language boundaries. This book explores Java Unicode and provides concrete examples for using its features to create multilingual user interfaces; to correctly format currency, dates and times; and to ensure font support for different languages. |
Contents
Introduction to Internationalization | 1 |
Why Choose Java for International lications? | 10 |
What Is a Locale? | 12 |
A Simple Application | 13 |
Writing Systems | 17 |
Far East Writing Systems | 22 |
Bidirectional Scripts | 31 |
Greek Latin and Cyrillic | 36 |
Fonts and Text Rendering | 199 |
Characters Glyphs and Fonts | 200 |
Javas FontRelated Classes | 203 |
Components for Rendering Complex Text | 207 |
TrueType Font Support in Java | 216 |
Working with the fontproper ties File | 219 |
Adding New Fonts to Your System | 229 |
Internationalized Graphical User Interfaces | 233 |
Indie Scripts | 43 |
Thai Script | 44 |
Punctuation | 46 |
Locales | 49 |
Working with the Locale Class | 50 |
Querying for Locale Information | 56 |
Checking Available Locales | 61 |
Isolating LocaleSpecific Data with Resource Bundles | 63 |
The ResourceBundle Class | 64 |
How Resource Bundles Are Discovered and Named | 67 |
Property Resource Bundles | 74 |
List Resource Bundles | 75 |
Resource Bundle Caveats | 82 |
Deploying Resource Bundles with Applets | 88 |
Design Considerations for Resource Bundles | 90 |
Formatting Messages | 93 |
Number Formats | 116 |
Message Formats | 128 |
Character Sets and Unicode | 139 |
What Are Encoding Methods? | 143 |
What Is Unicode? | 145 |
Unicode Encoding Methods | 161 |
Code Set Conversion | 162 |
Searching Sorting and Text Boundary Detection | 171 |
Sorting in Java | 174 |
Tailoring Collation | 181 |
Improving Performance | 187 |
Searching | 189 |
Detecting Text Boundaries | 193 |
Component Orientation | 243 |
Internationalization and Localization Caveats for Various Components | 249 |
Using a Layout Manager | 260 |
Copying Cutting and Pasting International Text | 262 |
A Simple Example | 268 |
Input Methods | 281 |
What Is the Java Input Method Framework? | 283 |
Selecting Input Methods | 285 |
Developing a Simple Input Method | 290 |
How to Package and Install Input Methods | 296 |
Developing a More Complex Input Method | 298 |
Internationalized Web Applications | 317 |
Applets | 318 |
Servlets | 321 |
JavaServer Pages | 334 |
Future Enhancements to the Internationalization Support in Java | 351 |
Enhanced Complex Text | 354 |
Character Converter Framework | 355 |
Improving the Input Method Framework | 356 |
Language and Country Codes | 357 |
Character Encodings Supported by Java | 367 |
Unicode Character Blocks | 373 |
Programmers Quick Reference | 377 |
Internationalization Enhancements Across Versions of the JDK | 415 |
Glossary | 421 |
Bibliography | 427 |
433 | |
Other editions - View all
Common terms and phrases
alphabet applet application Arabic ASCII BreakIterator Calendar chapter char character encoding character set Class Summary public code point code set Collator ComponentOrientation contains currency DateFormat decimal separator default locale display English Example Figure final static int font.properties file format glyphs GregorianCalendar Hangul Hebrew Immediate Subclasses import input method Interfaces Implemented internationalization Japanese Java 2 SDK Java platform Java Runtime Environment language Latin Latin alphabet ListResourceBundle locale-specific lookup MessageFormat Methods public NumberFormat O'Reilly output parameter pattern properties file public abstract public boolean public class public final static public int public Object public static final public static void public String public void resource bundle return true runtime script servlet Shift-JIS SimpleDateFormat specific static final UnicodeBlock static void main(String StringBuffer Superclass symbol Synopsis Class Name Table TrueType Unicode Standard Unicode Transformation Format Version vowels Windows word writing systems Zhuyin שלום