/***********************************************************
jconv.dllを利用するためのモジュール
【2009/01/11 更新】
●命令/関数一覧
(文字コード変換)
; #defcfunc sjis_jis str p1 Shift-JISコードをJISコードに変換
; #defcfunc sjis_eucjp str p1 Shift-JISコードをEUC-JPコードに変換
; #defcfunc sjis_utf8 str p1 Shift-JISコードをUTF-8コードに変換
; #defcfunc jis_sjis str p1 JISコードをShift-JISコードに変換
; #defcfunc jis_eucjp str p1 JISコードをEUC-JPコードに変換
; #defcfunc jis_utf8 str p1 JISコードをUTF-8コードに変換
; #defcfunc eucjp_sjis str p1 EUC-JPコードをShift-JISコードに変換
; #defcfunc eucjp_jis str p1 EUC-JPコードをJISコードに変換
; #defcfunc eucjp_utf8 str p1 EUC-JPコードをUTF-8コードに変換
; #defcfunc utf8_sjis str p1 UTF-8コードをShift-JISコードに変換
; #defcfunc utf8_jis str p1 UTF-8コードをJISコードに変換
; #defcfunc utf8_eucjp str p1 UTF-8コードをEUC-JPコードに変換
; #defcfunc to_sjis str p1 未確認コードをShift-JISコードに変換
; #defcfunc to_jis str p1 未確認コードをJISコードに変換
; #defcfunc to_eucjp str p1 未確認コードをEUC-JPコードに変換
; #defcfunc to_utf8 str p1 未確認コードをUTF-8コードに変換
(jconv.dllの動作を設定)
; #deffunc jconvopt_sjis_7bit_ascii
SJISの半角と呼ばれている文字(0x20〜0x7eまでの文字コード)を
US-ASCIIとします。
; #deffunc jconvopt_sjis_7bit_jis
SJISの半角と呼ばれている文字(0x20〜0x7eまでの文字コード)を
JIS X0201とします。(デフォルト設定)
; #deffunc jconvopt_eucjp_7bit_ascii
EUCの半角と呼ばれている文字(0x20〜0x7eまでの文字コード)を
US-ASCIIとします。(デフォルト設定)
; #deffunc jconvopt_eucjp_7bit_jis
EUCの半角と呼ばれている文字(0x20〜0x7eまでの文字コード)を
JIS X0201とします。
※ 上記の動作設定命令は、たとえばShift-JISコードの文字列に対して
to_sjis関数を使用しただけなのに「\」が「\」に変換されてしまう
などの場合に使用して設定を変更することで、不要な変換を抑制でき
ることがあります。
***********************************************************/
#ifndef __GM_JCONV_DLL__
#define global __GM_JCONV_DLL__
#module jconv_dll
#uselib "jconv"
;#func about_jconv "_about_jconv@4"
#func jconv "_jconv@20" int,sptr,int,int,sptr // 文字コード変換
#func setjconvopt "_setjconvopt@4" int
// 0x20〜0x7eまでの文字コードをJIS X0201とするのか、US-ASCIIとするのかを調整
/* JC_JCODE_TYPE(jconv関数用) */
#const JC_AUTO 0
#const JC_UTF_7 1
#const JC_ISO2022JP 2
#const JC_UTF_8 3
#const JC_SHIFT_JIS 4
#const JC_EUC_JP 5
#const JC_UTF_16_B 6
#const JC_UTF_16_L 7
#const JC_UCS_4_B 8
#const TIMES_CONV_LEN 10
/* JC_JCODE_OPT(setjconvopt関数用) */
#const JO_SJIS_7BIT_ASCII 0
#const JO_SJIS_7BIT_JIS 1
#const JO_EUCJP_7BIT_ASCII 2
#const JO_EUCJP_7BIT_JIS 3
#defcfunc sjis_jis str p1
gosub *set_prms
jconv JC_SHIFT_JIS, str_from, len, JC_ISO2022JP, str_to
return str_to_
#defcfunc jis_sjis str p1
gosub *set_prms
jconv JC_ISO2022JP, str_from, len, JC_SHIFT_JIS, str_to
return str_to_
#defcfunc sjis_eucjp str p1
gosub *set_prms
jconv JC_SHIFT_JIS, str_from, len, JC_EUC_JP, str_to
return str_to_
#defcfunc eucjp_sjis str p1
gosub *set_prms
jconv JC_EUC_JP, str_from, len, JC_SHIFT_JIS, str_to
return str_to_
#defcfunc eucjp_jis str p1
gosub *set_prms
jconv JC_EUC_JP, str_from, len, JC_ISO2022JP, str_to
return str_to_
#defcfunc jis_eucjp str p1
gosub *set_prms
jconv JC_ISO2022JP, str_from, len, JC_EUC_JP, str_to
return str_to_
#defcfunc sjis_utf8 str p1
gosub *set_prms
jconv JC_SHIFT_JIS, str_from, len, JC_UTF_8, str_to
return str_to_
#defcfunc utf8_sjis str p1
gosub *set_prms
jconv JC_UTF_8, str_from, len, JC_SHIFT_JIS, str_to
return str_to_
#defcfunc jis_utf8 str p1
gosub *set_prms
jconv JC_ISO2022JP, str_from, len, JC_UTF_8, str_to
return str_to_
#defcfunc utf8_jis str p1
gosub *set_prms
jconv JC_UTF_8, str_from, len, JC_ISO2022JP, str_to
return str_to_
#defcfunc eucjp_utf8 str p1
gosub *set_prms
jconv JC_EUC_JP, str_from, len, JC_UTF_8, str_to
return str_to_
#defcfunc utf8_eucjp str p1
gosub *set_prms
jconv JC_UTF_8, str_from, len, JC_EUC_JP, str_to
return str_to_
#defcfunc to_sjis str p1
gosub *set_prms
jconv JC_AUTO, str_from, len, JC_SHIFT_JIS, str_to
return str_to_
#defcfunc to_jis str p1
gosub *set_prms
jconv JC_AUTO, str_from, len, JC_ISO2022JP, str_to
return str_to_
#defcfunc to_eucjp str p1
gosub *set_prms
jconv JC_AUTO, str_from, len, JC_EUC_JP, str_to
return str_to_
#defcfunc to_utf8 str p1
gosub *set_prms
jconv JC_AUTO, str_from, len, JC_UTF_8, str_to
return str_to_
*set_prms
str_from_ = p1
str_from = varptr(str_from_)
len = strlen(str_from_)
sdim str_to_, len * TIMES_CONV_LEN + 4
str_to = varptr(str_to_)
return
#deffunc jconvopt_sjis_7bit_ascii
setjconvopt JO_SJIS_7BIT_ASCII
return
#deffunc jconvopt_sjis_7bit_jis
setjconvopt JO_SJIS_7BIT_JIS
return
#deffunc jconvopt_eucjp_7bit_ascii
setjconvopt JO_EUCJP_7BIT_ASCII
return
#deffunc jconvopt_eucjp_7bit_jis
setjconvopt JO_EUCJP_7BIT_JIS
return
#global
#endif
|