spBase
読み取り中…
検索中…
一致する文字列を見つけられません
日本語処理

関数

int spSetKanjiOptions (int n, const char **options)
 
void spKanjiUsage (const char *name)
 
void spDecodeMime (int flag)
 
void spSetKanjiCode (spKanjiCode icode, spKanjiCode ocode)
 
spKanjiCode spGetKanjiCode (void)
 
const char * spGetKanjiCodeLabel (spKanjiCode code)
 
spKanjiCode spGetLocaleKanjiCode (const char *lang)
 
spKanjiCode spConvertKanji (const unsigned char *lin, unsigned char *lout, int size)
 
spKanjiCode spConvertKanjiCode (const unsigned char *lin, unsigned char *lout, int size, spKanjiCode icode, spKanjiCode ocode)
 

詳解

関数詳解

◆ spSetKanjiOptions()

int spSetKanjiOptions ( int n,
const char ** options )
extern

nkfに渡すオプション引数を指定します. スレッドを使用している場合,漢字を変換する関数を呼んでいる最中にこの関数を呼んだときの動作は不定です.

引数
[in]n引数の数を指定します.
[in]options引数を指定します.引数の形式は, nkfのコマンドライン上での引数と同じです. spKanjiUsage() を使用すれば引数のリストを表示させることができます.
戻り値

各種例
spcat.c.

◆ spKanjiUsage()

void spKanjiUsage ( const char * name)
extern

nkfのコマンドライン引数を標準エラー出力に表示します.

引数
[in]nameコマンド名を指定すると,最初の行にこの名前が表示されます. NULLを指定した場合には,その行は表示されません.

◆ spDecodeMime()

void spDecodeMime ( int flag)
extern

MIMEをデコードするかどうかを決定します.デフォルトではデコードしないようになっています. スレッドを使用している場合, 漢字を変換する関数を呼んでいる最中にこの関数を呼んだときの動作は不定です.

引数
[in]flag非ゼロの場合にはデコードを行い,ゼロの場合には行いません.

◆ spSetKanjiCode()

void spSetKanjiCode ( spKanjiCode icode,
spKanjiCode ocode )
extern

漢字コードを指定します. スレッドを使用する場合は,この関数の代わりに spConvertKanjiCode() を使用して下さい.

引数
[in]icode入力の漢字コードを指定します.SP_KANJI_CODE_UNKNOWN,SP_KANJI_CODE_JIS,SP_KANJI_CODE_EUC,SP_KANJI_CODE_SJISのいずれかが指定できます.SP_KANJI_CODE_UNKNOWNを指定した場合は自動判定しますが, 可能性の高い漢字コードを指定しておくと変換誤りが減少します.
[in]ocode出力の漢字コードを指定します.SP_KANJI_CODE_UNKNOWN,SP_KANJI_CODE_JIS,SP_KANJI_CODE_EUC,SP_KANJI_CODE_SJISSP_KANJI_CODE_ZENKAKU_JIS,SP_KANJI_CODE_ZENKAKU_EUC,SP_KANJI_CODE_ZENKAKU_SJISのいずれかが指定できます.

デフォルトの出力コードはSP_KANJI_CODE_JISになっています.

各種例
spcat.c.

◆ spGetKanjiCode()

spKanjiCode spGetKanjiCode ( void )
extern

現在の漢字コードを得ます. スレッドを使用する場合は,この関数の代わりに spConvertKanjiCode() を使用して下さい.

戻り値
現在の漢字コードが返ります.SP_KANJI_CODE_UNKNOWN,SP_KANJI_CODE_JIS,SP_KANJI_CODE_EUC,SP_KANJI_CODE_SJISのいずれかが返ります.

◆ spGetKanjiCodeLabel()

const char * spGetKanjiCodeLabel ( spKanjiCode code)
extern

漢字コードに対応するラベルを得ます.

引数
[in]code漢字コードを指定します.SP_KANJI_CODE_CURRENTを指定した場合は現在の漢字コードのラベルを得ます.
戻り値
スタティックな文字列が返ります.
各種例
spcat.c.

◆ spGetLocaleKanjiCode()

spKanjiCode spGetLocaleKanjiCode ( const char * lang)
extern

ロケールに対応する漢字コードを得ます.

引数
[in]langロケールを指定します.NULLの場合は現在のロケールを獲得します.
戻り値
漢字コードが返ります.SP_KANJI_CODE_UNKNOWN,SP_KANJI_CODE_JIS,SP_KANJI_CODE_EUC,SP_KANJI_CODE_SJISのいずれかが返ります.
各種例
spcat.c.

◆ spConvertKanji()

spKanjiCode spConvertKanji ( const unsigned char * lin,
unsigned char * lout,
int size )
extern

文字列の漢字コードを変換します. 入力文字列と出力バッファの領域が重なっていても問題ありません.

なお,スレッドを使用していて,かつ出力漢字コードを指定したい場合は,この関数の代わりに spConvertKanjiCode() を使用して下さい.

引数
[in]lin入力文字列を指定します.
[out]lout出力文字列用のバッファを指定します.文字列の終端には必ずヌル文字が付加されます.
[in]size出力文字列用のバッファの大きさを指定します. この大きさ-1を超えた分は無視されます(-1はヌル文字分).
戻り値
入力文字列の漢字コードが返ります.SP_KANJI_CODE_UNKNOWN,SP_KANJI_CODE_JIS,SP_KANJI_CODE_EUC,SP_KANJI_CODE_SJISのいずれかが返ります.
各種例
spcat.c.

◆ spConvertKanjiCode()

spKanjiCode spConvertKanjiCode ( const unsigned char * lin,
unsigned char * lout,
int size,
spKanjiCode icode,
spKanjiCode ocode )
extern

文字列の漢字コードを変換します. 入力文字列と出力バッファの領域が重なっていても問題ありません.

引数
[in]lin入力文字列を指定します.
[out]lout出力文字列用のバッファを指定します.文字列の終端には必ずヌル文字が付加されます.
[in]size出力文字列用のバッファの大きさを指定します. この大きさ-1を超えた分は無視されます(-1はヌル文字分).
[in]icode入力の漢字コードを指定します.SP_KANJI_CODE_UNKNOWN, SP_KANJI_CODE_JIS, SP_KANJI_CODE_EUC, SP_KANJI_CODE_SJISのいずれかが指定できます.SP_KANJI_CODE_UNKNOWNを指定した場合は自動判定しますが,可能性の高い漢字コードを指定しておくと変換誤りが減少します.
[in]ocode出力の漢字コードを指定します.SP_KANJI_CODE_UNKNOWN, SP_KANJI_CODE_JIS, SP_KANJI_CODE_EUC, SP_KANJI_CODE_SJIS, SP_KANJI_CODE_ZENKAKU_JIS, SP_KANJI_CODE_ZENKAKU_EUC, SP_KANJI_CODE_ZENKAKU_SJISのいずれかが指定できます.
戻り値
入力文字列の漢字コードが返ります.SP_KANJI_CODE_UNKNOWN, SP_KANJI_CODE_JIS, SP_KANJI_CODE_EUC, SP_KANJI_CODE_SJISのいずれかが返ります.