xIUA Home Page
X.Net Internationalization and Unicode Adaptor
Developed by X.Net, Inc.
As Unicode has become more universal and the use of code pages has diminished, much of the functionality of xIUA is no longer needed. However, adding multi-locale support to applications that were developed to support a single locale is still a problem. Because functional change deep within an application may require locale information, APIs throughout the application need to be changed to pass the locale to lower layers of code. A simple solution would be to extract just the locales support portions of the xIUA code. This would give you access to the thread independent current locale anywhere in the application without changing any APIs. The code would also be platform independent. If anyone is interested in developing this code please contact me.
xIUA is a starter package to help users develop application code to interface with ICU (International Components for Unicode). It contains useful code that does not belong in ICU. xIUA is designed to simplify enabling Unicode support in applications.
xIUA 3.0 is the first publicly released version of this code. The original code was started in March 2000. It has been used as a source for ICU support for X.Net clients. The current version is xIUA 3.6 which supports ICU 1.8.1 through ICU 2.8.
Some of the recent changes include GB18030 support. A new routine was added to process the browser Accept-Charset string to pick the best character set for the specific locale. A system of locale classes was added so that the application did not have to keep track of which locale, character set and data format is being used for the browser, database or HTML/XML files. It also will set ICU invalid character handling so the you can have the characters like the Euro sign automatically escaped to € so that it displays as € even though the character set is iso-8859-1 like this page.
The routine that will display a list of time zones for the country or the country and its territories or related countries has been updated for ICU 2.8 as well as the full list of time zones. However the design of the full list routine had to be rewritten to build its own time zone offset list table in ICU 2.8 due to the restructuring in ICU.
For contact information see the X.Net, Inc. Home page