Lucas Eckels | dc4699f | 2012-08-06 15:22:01 -0700 | [diff] [blame] | 1 | NOTE: Code downloaded from http://www.unicode.org |
| 2 | |
| 3 | The accompanying C source code file "ConvertUTF.c" and the associated header |
| 4 | file "ConvertUTF.h" provide for conversion between various transformation |
| 5 | formats of Unicode characters. The following conversions are supported: |
| 6 | |
| 7 | UTF-32 to UTF-16 |
| 8 | UTF-32 to UTF-8 |
| 9 | UTF-16 to UTF-32 |
| 10 | UTF-16 to UTF-8 |
| 11 | UTF-8 to UTF-16 |
| 12 | UTF-8 to UTF-32 |
| 13 | |
| 14 | In addition, there is a test harness which runs various tests. |
| 15 | |
| 16 | The files "CVTUTF7.C" and "CVTUTF7.H" are for archival and historical purposes |
| 17 | only. They have not been updated to Unicode 3.0 or later and should be |
| 18 | considered obsolescent. "CVTUTF7.C" contains two functions that can convert |
| 19 | between UCS2 (i.e., the BMP characters only) and UTF-7. Surrogates are |
| 20 | not supported, the code has not been tested, and should be considered |
| 21 | unsuitable for general purpose use. |
| 22 | |
| 23 | Please submit any bug reports about these programs here: |
| 24 | |
| 25 | http://www.unicode.org/unicode/reporting.html |
| 26 | |
| 27 | Version 1.0: initial version. |
| 28 | |
| 29 | Version 1.1: corrected some minor problems; added stricter checks. |
| 30 | |
| 31 | Version 1.2: corrected switch statements associated with "extraBytesToRead" |
| 32 | in 4 & 5 byte cases, in functions for conversion from UTF8. |
| 33 | Note: formally, the 4 & 5 byte cases are illegal in the latest |
| 34 | UTF8, but the table and this code has always catered for those, |
| 35 | cases since at one time they were legal. |
| 36 | |
| 37 | Version 1.3: Updated UTF-8 legality check; |
| 38 | updated to use UNI_MAX_LEGAL_UTF32 in UTF-32 conversions |
| 39 | Updated UTF-8 legality tests in harness.c |
| 40 | |
| 41 | |
| 42 | Last update: October 19, 2004 |
| 43 | |
| 44 | |