日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
日本語 OpenVMS
|
目次 | 索引 |
基本ライブラリ とは,1 文字単位の変換など,より細かな処理を行うためのルーチン群です。
この章では,基本ライブラリの次の項目について説明します。
基本ライブラリ・ルーチン一覧 ( 第 4.1 節 )
日本語文字列操作ルーチン ( 第 4.2 節 )
文字変換ルーチン ( 第 4.3 節 )
文字列変換ルーチン ( 第 4.4 節 )
4.1 基本ライブラリ・ルーチン一覧 |
日本語データを扱うための基本的なルーチン群です。1バイト/2バイトの文字コードを正しく取り扱うために使用します。各ルーチンの詳細については 第 4.2 節 を参照してください。
JSY$CH_NEXT | 次の文字の文字位置の入手 |
JSY$CH_PREV | 前の文字の文字位置の入手 |
JSY$CH_CURR | 現在の文字の文字位置の入手 |
JSY$POS_NEXT | 次の文字の文字位置の入手,
および文字列の終わりのチェック |
JSY$POS_PREV | 前の文字の文字位置の入手,
および文字列の終わりのチェック |
JSY$POS_CURR | 現在の文字の文字位置の入手,
および文字列の終わりのチェック |
JSY$CH_RCHAR | 文字列からの文字の取り出し |
JSY$CH_RNEXT | 文字列からの文字の取り出し |
JSY$CH_WCHAR | 文字列への文字の書き込み |
JSY$CH_WNEXT | 文字列への文字の書き込み |
JSY$CH_GCHAR | 文字列からの文字の取り出し,
および文字列の終わりのチェック |
JSY$CH_GNEXT | 文字列からの文字の取り出し,
および文字列の終わりのチェック |
JSY$CH_PCHAR | 文字列への文字の書き込み,
および文字列の終わりのチェック |
JSY$CH_PNEXT | 文字列への文字の書き込み,
および文字列の終わりのチェック |
JSY$CH_SIZE | 文字が占めるバイト数の入手 |
JSY$CH_NBYTE | 文字列が占めるバイト数の入手 |
JSY$CH_NCHAR | 文字列に含まれる文字数の入手 |
JSY$POSITION | 文字列の検索 |
JSY$STR_EQUAL | 英大文字/小文字,全角/半角,
ひらがな/カタカナ変換による文字列の比較 |
JSY$STR_START | 英大文字/小文字,全角/半角,
ひらがな/カタカナ変換による文字列の比較 |
JSY$STR_SEARCH | 英大文字/小文字,全角/半角,
ひらがな/カタカナ変換による文字列の検索 |
JSY$TRIM | 文字列の後の空白の切り捨て |
JSY$TRUNC | 文字列の切り捨て |
JSY$LOCC | 文字の検索 |
JSY$SKPC | 文字の飛び越し |
文字単位の各種変換を行うルーチン群です。各ルーチンの詳細については 第 4.3 節 を参照してください。
JSY$CHG_ROM_HALF | ローマ文字全角から半角への変換 |
JSY$CHG_ROM_FULL | ローマ文字半角から全角への変換 |
JSY$CHG_ROM_SIZE | ローマ文字全角/半角の相互変換 |
JSY$CHG_ROM_LOWER | 英文字半角/全角の小文字への変換 |
JSY$CHG_ROM_UPPER | 英文字半角/全角の大文字への変換 |
JSY$CHG_ROM_CASE | 英文字全角/半角の大文字/小文字の相互変換 |
JSY$CHG_KANA_HIRA | 全角カタカナから全角ひらがなへの変換 |
JSY$CHG_KANA_KATA | 全角ひらがなから全角カタカナへの変換 |
JSY$CHG_KANA_KANA | 全角ひらがな/全角カタカナの相互変換 |
JSY$CHG_KANA_DAKU | 全角ひらがな/カタカナの濁点/半濁点処理 |
JSY$CHG_KANA_HALF | 全角ひらがな/カタカナから半角カタカナへの変換 |
JSY$CHG_KANA_FULL | 半角カタカナから全角ひらがな/カタカナへの変換 |
JSY$CHG_GENERAL | パラメータ指定による,英大文字/小文字,全角/半角,ひらがな/カタカナ |
JSY$CHG_JIS_KUTEN | JIS 区点番号から DEC 漢字コードへの変換 |
JSY$CHG_KEISEN | 数字から罫線文字への変換 |
文字列の各種変換を行うルーチン群です。各ルーチンの詳細については 第 4.4 節 を参照してください。
JSY$TRA_ROM_HALF | ローマ文字全角から半角への変換 |
JSY$TRA_ROM_FULL | ローマ文字半角から全角への変換 |
JSY$TRA_ROM_SIZE | ローマ文字全角/半角の相互変換 |
JSY$TRA_ROM_LOWER | 英文字半角/全角の小文字への変換 |
JSY$TRA_ROM_UPPER | 英文字半角/全角の大文字への変換 |
JSY$TRA_ROM_CASE | 英文字全角/半角の大文字/小文字の相互変換 |
JSY$TRA_ROM_KANA | ローマ字から全角ひらがな/カタカナへの変換 |
JSY$TRA_KANA_HIRA | 全角カタカナから全角ひらがなへの変換 |
JSY$TRA_KANA_KATA | 全角ひらがなから全角カタカナへの変換 |
JSY$TRA_KANA_KANA | 全角ひらがな/全角カタカナの相互変換 |
JSY$TRA_KANA_DAKU | 全角ひらがな/カタカナの濁点/半濁点処理 |
JSY$TRA_KANA_HALF | 全角ひらがな/カタカナから半角カタカナへの変換 |
JSY$TRA_KANA_FULL | 半角カタカナから全角ひらがな/カタカナへの変換 |
JSY$TRA_SYMBOL | 記号変換 |
日本語文字列操作ルーチンは,日本語データを扱うための基本的なルーチン群です。 1 バイト /2 バイトの文字コードを正しく取り扱うために使用します。
JSY$CH_NEXT |
次の文字の文字位置の入手
next-ptr = JSY$CH_NEXT ( char-ptr )
char-ptr JSY usage 文字の1バイト目を指すポインタ mechanism Value渡し
next-ptr 1文字次の文字の1バイト目を指すポインタ
#include <stdio.h> #include <string.h> static void create_display_string(); main() { char *char_ptr, *next_ptr; char string[] = "日本語RTL"; char disp_str[32]; int byte_offset = 4; extern char *jsy$ch_next(); char_ptr = string + byte_offset; printf( "文字列 :\"%s\"\n", string ); create_display_string( char_ptr, disp_str ); printf( "実行前の位置の文字 :%s\n", disp_str ); next_ptr = jsy$ch_next( char_ptr ); create_display_string( next_ptr, disp_str ); printf( "実行後の位置の文字 :%s\n", disp_str ); } static void create_display_string(src, disp) char *src; char *disp; { int nof_byte_char = 1; unsigned char check; check = (unsigned char)(*src); if ( ( 0x0A1 <= check ) && ( check <= 0x0FE ) ) /* 範囲内なら2バイト文字 */ nof_byte_char = 2; strncpy( disp, src, nof_byte_char ); disp[ nof_byte_char ] = '\0'; }
JSY$CH_PREV |
前の文字の文字位置の入手
prev-ptr = JSY$CH_PREV ( top-ptr, char-ptr )
top-ptr JSY usage 文字列の先頭を指すポインタ mechanism Value渡し char-ptr JSY usage 文字の1バイト目を指すポインタ mechanism Value渡し
prev-ptr 1文字前の文字の1バイト目を指すポインタ char-ptr ≦ top-ptr の場合は0
JSY$CH_CURR |
現在の文字の文字位置の入手
curr-ptr = JSY$CH_CURR ( top-ptr, char-ptr )
top-ptr JSY usage 文字列の先頭を指すポインタ mechanism Value渡し char-ptr JSY usage 文字の1バイト目または2バイト目を指すポインタ mechanism Value渡し
curr-ptr 文字の1バイト目を指すポインタ char-ptr < top-ptr の場合は0
JSY$POS_NEXT |
次の文字の文字位置の入手,および文字列の終わりのチェック
next-ptr = JSY$POS_NEXT ( char-ptr, end-ptr )
char-ptr JSY usage 文字の1バイト目を指すポインタ mechanism Value渡し end-ptr JSY usage 文字列の終わりを示すポインタ mechanism Value渡し
next-ptr 1文字次の文字の1バイト目を指すポインタ char-ptr ≧ end-ptr の場合は0
JSY$POS_PREV |
前の文字の文字位置の入手,および文字列の終わりのチェック
prev-ptr = JSY$POS_PREV ( top-ptr, char-ptr, end-ptr )
top-ptr JSY usage 文字列の先頭を指すポインタ mechanism Value渡し char-ptr JSY usage 文字の1バイト目を指すポインタ mechanism Value渡し end-ptr JSY usage 文字列の終わりを示すポインタ mechanism Value渡し
prev-ptr 1文字前の文字の1バイト目を指すポインタ char-ptr ≦ top-ptr または char-ptr > end-ptr の場合は 0
#include <stdio.h> #include <string.h> #define MSB 0x80 static void create_display_string(); main() { char *top_ptr, *char_ptr, *end_ptr, *prev_ptr; char string[] = "日本語RTL"; char disp_str[32]; int byte_offset = 6; extern char *jsy$pos_prev(); top_ptr = string; end_ptr = string + strlen( string ); char_ptr = string + byte_offset; create_display_string( char_ptr, disp_str ); printf( "文字列 :\"%s\"\n", string ); printf( "実行前の位置の文字 :%s\n", disp_str ); prev_ptr = jsy$pos_prev( top_ptr, char_ptr, end_ptr ); create_display_string( prev_ptr, disp_str ); printf( "実行後の位置の文字 :%s\n", disp_str ); } static void create_display_string(src, disp) char *src; char *disp; { int nof_byte_char = 1; unsigned char check; check = (unsigned char)(*src); if ( ( 0x0A1 <= check ) && ( check <= 0x0FE ) ) /* 範囲内なら2バイト文字 */ nof_byte_char = 2; strncpy( disp, src, nof_byte_char ); disp[ nof_byte_char ] = '\0'; }
JSY$POS_CURR |
現在の文字の文字位置の入手,および文字列の終わりのチェック
curr-ptr = JSY$POS_CURR ( top-ptr, char-ptr, end-ptr )
top-ptr JSY usage 文字列の先頭を指すポインタ mechanism Value渡し char-ptr JSY usage 文字の1バイト目または2バイト目を指すポインタ mechanism Value渡し end-ptr JSY usage 文字列の終わりを示すポインタ mechanism Value渡し
curr-ptr 文字の1バイト目を指すポインタ char-ptr < top-ptr または char-pt ≧ end-ptr の場合は0
JSY$CH_RCHAR |
文字列からの文字の取り出し
char-code = JSY$CH_RCHAR ( char-ptr )
char-ptr JSY usage 文字の1バイト目を指すポインタ mechanism Value渡し
char-code ポインタが指している文字の文字コード
目次 | 索引 |
|