NAME

IOas::CP932X - provides CP932X I/O subroutines for UTF-8 script

SYNOPSIS

use IOas::CP932X;

  # Octet Length as I/O Encoding
  $result = IOas::CP932X::length($utf8str);
  $result = IOas::CP932X::sprintf($utf8format, @utf8list);
  $result = IOas::CP932X::substr($utf8expr, $offset_as_cp932x, $length_as_cp932x, $utf8replacement);
  $result = IOas::CP932X::substr($utf8expr, $offset_as_cp932x, $length_as_cp932x);
  $result = IOas::CP932X::substr($utf8expr, $offset_as_cp932x);

  # String Comparison as I/O Encoding
  $result = IOas::CP932X::cmp($utf8str_a, $utf8str_b);
  $result = IOas::CP932X::eq($utf8str_a, $utf8str_b);
  $result = IOas::CP932X::ne($utf8str_a, $utf8str_b);
  $result = IOas::CP932X::ge($utf8str_a, $utf8str_b);
  $result = IOas::CP932X::gt($utf8str_a, $utf8str_b);
  $result = IOas::CP932X::le($utf8str_a, $utf8str_b);
  $result = IOas::CP932X::lt($utf8str_a, $utf8str_b);
  @result = IOas::CP932X::sort(@utf8str);

  # Encoding Convert on I/O Operations
  $result = IOas::CP932X::getc(FILEHANDLE);
  $scalar = IOas::CP932X::readline(FILEHANDLE);
  @list   = IOas::CP932X::readline(FILEHANDLE);
  $result = IOas::CP932X::print(FILEHANDLE, @utf8str);
  $result = IOas::CP932X::printf(FILEHANDLE, $utf8format, @utf8list);

Count Length by

--------------------------------------------------------
count by    count by              count by octet
octet       UTF-8 codepoint       in I/O encoding
(useful)    (not so useful)       (useful)
--------------------------------------------------------
length      UTF8::R2::length      IOas::CP932X::length
sprintf                           IOas::CP932X::sprintf
substr      UTF8::R2::substr      IOas::CP932X::substr
--------------------------------------------------------

Compare String by

--------------------------------------------------------
compare by                        compare by
script encoding                   I/O encoding
--------------------------------------------------------
cmp                               IOas::CP932X::cmp
eq                                IOas::CP932X::eq
ne                                IOas::CP932X::ne
ge                                IOas::CP932X::ge
gt                                IOas::CP932X::gt
le                                IOas::CP932X::le
lt                                IOas::CP932X::lt
sort                              IOas::CP932X::sort
--------------------------------------------------------

I/O Operations

--------------------------------------------------------
raw I/O       I/O operations      I/O operations
operations    in UTF-8 encoding   with encoding convert
--------------------------------------------------------
getc          UTF8::R2::getc      IOas::CP932X::getc
<FILEHANDLE>                      IOas::CP932X::readline
print                             IOas::CP932X::print
printf                            IOas::CP932X::printf
--------------------------------------------------------

AUTHOR

INABA Hitoshi <ina@cpan.org>

This project was originated by INABA Hitoshi.

LICENSE AND COPYRIGHT

This software is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.

This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.