C++ Builder控件版
作者 佚名技术
来源 程序设计
浏览
发布时间 2012-06-30
eak; n=m; strncpy(sour,inputtext,m); if(n%3) n=n-n%3+3; for(i=m;i<n;i++) *(sour+i)=NULL; } else { m=45; strncpy(sour,inputtext,m); } inputtext+=m; for(i=0;i<n/3;i++) Xxe(sour+i*3,obje+i*4); *(FOutputText+j++)=set[m&63]; strncpy(FOutputText+j,obje,n/3*4); j+=n/3*4; *(FOutputText+j++)=''\n''; } *(FOutputText+j++)=''+''; *(FOutputText+j++)=''\n''; *(FOutputText+j)=''\0''; FOutput=(AnsiString)FOutputText; delete []sour; delete []obje; } //--------------------------------------------------------------------------- /*Xxencode園鷹*/ void __fastcall TGbBig::Xxe(unsigned char chasc[3],unsigned char chxxe[4]) /* chasc?隆園鷹議屈序崙旗鷹 chxxe?園鷹狛議Xxe旗鷹 */ { int i; char set[]="+-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; chxxe[0]=chasc[0]>>2; chxxe[1]=(chasc[0]<<4)&48|(chasc[1]>>4)&15; chxxe[2]=(chasc[1]<<2)&60|(chasc[2]>>6)&3; chxxe[3]=chasc[2]&63; for(i=0;i<4;i++) chxxe[i]=set[chxxe[i]]; /*臥燕*/ } /*俶廣吭議頁?Xxencode猟周屎猟何蛍嶄耽匯佩議及匯倖忖銚頁?貫坿猟周嶄糞縞響函議忖憲方議ASCII峙函朔鎗了朔喘set[]臥燕誼欺議。*/ //--------------------------------------------------------------------------- //斤XXenCode盾鷹 void __fastcall TGbBig::DecodeXxe(void) { unsigned char *sour,*obje,*inputtext; unsigned int i,j=0,m=45,n; sour=new char[60]; obje=new char[45]; inputtext=FInputText; while(m==45) { while(*inputtext==''\r''||*inputtext==''\n'') inputtext++; if((m=*inputtext)!=''+''||m==''\0'') { n=set(m); m=n; inputtext++; } else break; if(n<45) { if(n%3) n=(n-n%3+3)/3*4; else n=n/3*4; } else n=n/3*4; strncpy(sour,inputtext,n); inputtext+=n; for(i=0;i<n/4;i++) unXxe(sour+i*4,obje+i*3); strncpy(FOutputText+j,obje,m); j+=m; } *(FOutputText+j)=''\0''; FOutput=(AnsiString)FOutputText; delete []sour; delete []obje; } //--------------------------------------------------------------------------- /*Xxencode盾鷹*/ unsigned char __fastcall TGbBig::set(unsigned char ch) /*臥燕痕方*/ { if(ch==43) ch=0; else if(ch==45) ch=1; else if(ch>=48&&ch<=57) ch-=46; else if(ch>=65&&ch<=90) ch-=53; else if(ch>=97&&ch<=122) ch-=59; return ch; } //--------------------------------------------------------------------------- void __fastcall TGbBig::unXxe(unsigned char chxxe[4],unsigned char chasc[3]) /* chxxe?隆盾鷹議Xxe旗鷹 chasc?盾鷹狛議屈序崙旗鷹 */ { int k=2 ,i; unsigned char t; t=NULL; *chxxe=set(*chxxe); for(i=0;i<3;i++) { *(chxxe+i+1)=set(*(chxxe+i+1)); *(chasc+i)=*(chxxe+i)<<k; k+=2; t=*(chxxe+i+1)>>8-k; *(chasc+i)|=t; } } //--------------- |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |