scuffed-code/icu4c/source/samples/uciter8
2010-10-09 01:23:28 +00:00
..
Makefile ICU-2397 split uciter8.c to make separate uit_len8.h/.c 2003-02-10 19:56:40 +00:00
readme.txt ICU-4428 update copyright notices for ICU 3.3. 2005-03-08 22:49:59 +00:00
uciter8.c ICU-5853 Cleaned up some GCC warnings. 2007-08-21 23:04:39 +00:00
uciter8.sln ICU-6697 Updated samples, test/perf subtree project files. Fixed a bug in reader.c while I was in the neighborhood... 2009-01-23 03:48:42 +00:00
uciter8.vcxproj ICU-8028 update version number to milestone:4.6, bump timebombs, etc 2010-10-09 01:23:28 +00:00
uciter8.vcxproj.filters ICU-7870 VS2010 - tests and samples 2010-08-11 00:59:38 +00:00
uit_len8.c ICU-5043 low-level code for lenient-UTF-8 UText provider 2006-02-09 21:16:20 +00:00
uit_len8.h ICU-2397 split uciter8.c to make separate uit_len8.h/.c 2003-02-10 19:56:40 +00:00

Copyright (c) 2003-2005, International Business Machines Corporation and others. All Rights Reserved.
uciter8: Lenient reading of 8-bit Unicode with a UCharIterator

This sample demonstrates reading
8-bit Unicode text leniently, accepting a mix of UTF-8 and CESU-8
and also accepting single surrogates.
UTF-8-style macros are defined as well as a UCharIterator.
The macros are incomplete (do not assemble code points from pairs of surrogates)
but sufficient for the iterator.

If you wish to use the lenient-UTF/CESU-8 UCharIterator in a context outside of
this sample, then copy the uit_len8.c file,
as well as either the uit_len8.h header or just the prototype that it contains.

*** Warning: ***
This UCharIterator reads an arbitrary mix of UTF-8 and CESU-8 text.
It does not conform to any one Unicode charset specification,
and its use may lead to security risks.


Files:
    uciter8.c        Main source file in C
    uit_len8.c       Lenient-UTF/CESU-8 UCharIterator implementation
    uit_len8.h       Header file with the prototoype for the lenient-UTF/CESU-8 UCharIterator
    uciter8.sln      Windows MSVC workspace.  Double-click this to get started.
    uciter8.vcproj   Windows MSVC project file

To Build uciter8 on Windows
    1.  Install and build ICU
    2.  In MSVC, open the workspace file icu\samples\uciter8\uciter8.sln
    3.  Choose a Debug or Release build.
    4.  Build.

To Run on Windows
    1.  Start a command shell window
    2.  Add ICU's bin directory to the path, e.g.
            set PATH=c:\icu\bin;%PATH%
        (Use the path to where ever ICU is on your system.)
    3.  cd into the uciter8 directory, e.g.
            cd c:\icu\source\samples\uciter8\debug
    4.  Run it
            uciter8

To Build on Unixes
    1.  Build ICU.  
        Specify an ICU install directory when running configure,
        using the --prefix option.  The steps to build ICU will look something
        like this:
           cd <icu directory>/source
           runConfigureICU <platform-name> --prefix <icu install directory> [other options]
           gmake all

    2.  Install ICU, 
           gmake install

    3.  Compile
           cd <icu directory>/source/samples/uciter8
           gmake ICU_PREFIX=<icu install directory)

To Run on Unixes
           cd <icu directory>/source/samples/uciter8
           
           gmake ICU_PREFIX=<icu install directory>  check
               -or- 

           export LD_LIBRARY_PATH=<icu install directory>/lib:.:$LD_LIBRARY_PATH
           uciter8


 Note:  The name of the LD_LIBRARY_PATH variable is different on some systems.
        If in doubt, run the sample using "gmake check", and note the name of
        the variable that is used there.  LD_LIBRARY_PATH is the correct name
        for Linux and Solaris.