libhz ʹÓüò½é libhzÌṩÁËgb/big5/hz×Ô¶¯Ê¶±ðºÍgb,big5,hz,utf8,utf7,unicodeÖ®¼äµÄת»»º¯Êý¡£ ÆäÖУº include/hz.h /*Í·Îļþ*/ lib/libhz.a /*¾²Ì¬¿â*/ lib/libhz.so /*¹²Ïí¿â*/ Example: gb/big/hzʶ±ð incode=j_code(pbuf,count);Çë²»ÒªÖ±½ÓʹÓÃj_code3µÈ. pbufÊÇÒªÊDZðµÄ×Ö·û´®£¬countÊÇҪʶ±ðµÄ×Ö·ûÊý¡£ ·µ»ØÖµÔÚhz.hÀïÃ涨Òå¡£ Example£º gb->big5ת»» ·½·¨Ò»: Ö±½Óµ÷ÓÃת»»º¯Êý ... gb2big_init(); /*³õʼ»¯*/ ... /*Ñ»·,¶Áµ½pbufÀï,È»ºóת»»*/ gb2big(pbuf,&count,0) ... /*Ñ»·½áÊø*/ ÆäÖÐ pbufÊÇÖ¸ÏòҪת»»µÄ×Ö·û´®µÄÖ¸Õ룬pbufÇ°±£ÁôÒ»¸ö×Ö·ûµÄ¿Õ¼ä,countÊÇҪת»»µÄ ×Ö·ûÊý£¬0ÊÇÖ¸¶¨Ê¹Óõڼ¸¸öbuffer. ʹÓÃbufferµÄÔÒòÊÇΪÁË·ÀÖ¹pbufµÄ×îºó³öÏÖ°ë¸ö×Ö£¬µ±³öÏÖ°ë¸ö×Öʱ£¬Õâ°ë¸ö×־ͻáÔÚ bufferÀïÃæ±£´æ£¬Ï´ε÷ÓÃgb2bigʱ£¬Õâ°ë¸ö×־ͻᱻÌí¼Óµ½Ç°Ãæ¡£×¢Ò⣬¿ÉÒÔÓÐ16¸öbuffer (0-15). ÆäËûº¯ÊýʹÓ÷½·¨Ò²ÀàËÆ¡£ ·½·¨¶þ: ʹÓÃhz_search()ºÍhz_convert()×éºÏ ÍƼöʹÓÃÕâÖÖ·½·¨, search¿ÉÒÔ×éºÏ×îºÏÊʵÄת»»º¯Êý, convertÍê³Éת»»¹ý³Ì. hz_setup(); ³õʼ»¯Ä£¿éÊý¾Ý¿â, ½«À´»áÔÊÐíµ÷ÓÃÍⲿģ¿é. ... dist=search(incode,outcode,8); distÊÇÐèÒª×éºÏµÄת»»º¯ÊýµÄ¸öÊý, Èç¹ûµÈÓÚ0±íÃ÷ÎÞ·¨Íê³Éת»». 8±íʾ×î¶à×éºÏ8¸ö ת»»º¯Êý. ... ps=convert(pbuf,&count,0); Íê³Éת»»¹ý³Ì, convert¿ÉÒÔ×ÔÐÐ˳Ðòµ÷ÓÃ×éºÏºÃµÄº¯Êý. pbufÊÇÊäÈë´®, countΪת»»×Ö·ûÊý, 0±íʾʹÓÃÄÚ²¿¼Ä´æµ¥ÔªºÅÂë. °ë¸ö×Ö·ûÎÊÌâconvert¿ÉÒÔ×ÔÐд¦Àí. Yu Guanghui 2001.04.23