当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: 初学javascript,帮忙推荐一本书 ......
 ·哪里下载最新的odbc sdk 100分送    »显示摘要«
    摘要: 如题 ......


怎样将2个字符串异或

怎样将2个字符串异或得到一个新串?

NO.1   作者: lxpbuaa

var  
      S1,   S2,   R:   String;  
      I,   C,   C1,   C2:   Integer;  
  begin  
      S1   :=   ABCD;  
      S2   :=   12345ABCDE;  
      C1   :=   Length(S1);  
      C2   :=   Length(S2);  
      C   :=   C1;  
      if   C   <   C2   then   C   :=   C2;  
      S1   :=   S1   +   StringOfChar(#0,   C   -   C1);  
      S1   :=   S1   +   StringOfChar(#0,   C   -   C2);  
      SetLength(R,   C);  
   
      for   I   :=   1   to   C   do  
          R[I]   :=   Chr(Ord(S1[I])   xor   Ord(S2[I]));  
      ShowMessage(R);  
  end;  
   
  ————————————————————————————————————  
  宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。  
  ————————————————————————————————————

NO.2   作者: wwle

字符串是个数组,你分别按下标访问然后异或,行吗?

NO.3   作者: jacky_shen

如果异或的字符串长度不大于8的话可以用下面的。  
   
  var  
      S1,   S2,   S:   string;  
      L1,   L2:   Integer;  
  begin  
      S1   :=   ABCD;  
      S2   :=   12345ABC;  
      L1   :=   Length(S1);  
      L2   :=   Length(S2);  
      if   L2   >   L1   then   L1   :=   L2;  
      SetLength(S,   L1);  
      PInt64(Pointer(S))^   :=   PInt64(S1)^   xor   PInt64(S2)^;  
      ShowMessage(S);  
  end;  
   
 


    摘要: 在adodb.stream对象里有一个方法是stream.write,即向流对象写入二进制数据. 在vb里这个方法的参数必须是一个byte类型的数组. 但是在asp中没有类型,所以我使用write的时候老是出错, 请问有什么办法可以向stream.write方法写入二进制数据(不是从文件导入必须使用write方法) 急用谢谢!!!! ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE