C++ Builder控件版
作者 佚名技术
来源 程序设计
浏览
发布时间 2012-06-30
FOutputText=new char[Num*3/4+1]; DecodeXxe(); break; } } } //--------------------------------------------------------------------------- //GB鷹廬算葎Big5鷹 void __fastcall TGbBig::GbToBig5(void) { unsigned char gx,gy,bx,by; unsigned int xx,yy,i=0; while((gx=*FInputText++)!=''\0'') { if(gx>=161) { gy=*FInputText++; xx=(gx-161)*190; yy=(gy-161)*2; bx=*(FontLib+xx+yy); by=*(FontLib+xx+yy+1); if(gy<161) {bx=gx;by=gy;} *(FOutputText+i)=bx; i++; *(FOutputText+i)=by; i++; } else {*(FOutputText+i)=gx;i++;} } *(FOutputText+i)=''\0''; FOutput=(AnsiString)FOutputText; } //--------------------------------------------------------------------------- //Big5鷹廬算葎GB鷹 void __fastcall TGbBig::Big5ToGb(void) { unsigned char gx,gy,bx,by; unsigned int xx,yy,i=0; while((bx=*FInputText++)!=''\0'') { if(bx>=161) { by=*FInputText++; xx=(bx-161)*316; if(by<=126) yy=(by-64)*2; else yy=(by-98)*2; gx=*(FontLib+xx+yy); gy=*(FontLib+xx+yy+1); if(by<64) {gx=bx;gy=by;} *(FOutputText+i)=gx; i++; *(FOutputText+i)=gy; i++; } else {*(FOutputText+i)=bx;i++;} } *(FOutputText+i)=''\0''; FOutput=(AnsiString)FOutputText; } //--------------------------------------------------------------------------- //喘HZ序佩園鷹 void __fastcall TGbBig::EncodeHZ(void) { unsigned int x=0,i=0; unsigned char hz; while((hz=*FInputText++)!=''\0'') { if(hz>=161) { if(!x) { *(FOutputText+i)=''~''; i++; *(FOutputText+i)=''{''; i++; x=1; } else x=1; *(FOutputText+i)=(char)(hz-128); i++; } else { if(x) { *(FOutputText+i)=''~''; i++; *(FOutputText+i)=''}''; i++; x=0; } else x=0; *(FOutputText+i)=hz; i++; } } if(x) { *(FOutputText+i)=''~''; i++; *(FOutputText+i)=''}''; i++; x=0; } *(FOutputText+i)=''\0''; FOutput=(AnsiString)FOutputText; } //--------------------------------------------------------------------------- //斤HZ序佩盾鷹 void __fastcall TGbBig::DecodeHZ(void) { unsigned i=0; unsigned char hz; while((hz=*FInputText++)!=''\0'') { loop2: if(hz==126) if((hz=*FInputText++)!=''\0'') if(hz==123) while((hz=*FInputText++)!=''\0'') { loop3: if(hz==126) { if((hz=*FInputText++)!=''\0'') if(hz==125) goto loop; else {*(FOutputText+i)=(char)254;i++;goto loop3;} } else {*(FOutputText+i)=(char)(hz+128);i++;} } else {*(FOutputText+i)=''~'';i++;goto loop2;} else {*(FOut |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: C++ :指针及其有关的问题下一篇: C++中指针入门
关于C++ Builder控件版的所有评论