byte[] a={3,4};  
byte[] b ={1,3,2,3,4,5,6};
string strA=System.Text.Encoding.Default.GetString(a);
string strB=System.Text.Encoding.Default.GetString(b); int index=strB.IndexOf(strA);

解决方案 »

  1.   

    spraydew(云孤天): 这样当然不行了!如果 
    Byte b[]={1,2,3,4,5,6};
    变成
    Byte b[]={1,2,3,2,3,4,5};你这样的方法就不行不
      

  2.   

    TO  Samen168(Samen) 这个方法,我刚才想过,我的数组非常大的,,,!这样速度慢了些,,如果没有更好的办法,就给你了分了!其他的高手快来啊!!
      

  3.   

    to  Samen168(Samen)方法不太对~Default得改一下Ascii如果Default是Unicode话,则算出来,,,就有可能出错了,哈哈
      

  4.   

    因为byte最大值是255,肯定会转换为一个字符 只是如果数据量大占内存会多点,不过比循环还是好吧
      

  5.   

    to ssdjmcj8048(优游通[UUT]) 如果将二楼的方法改为
    string strA=System.Text.Encoding.Ascii.GetString(a);
    string strB=System.Text.Encoding.Ascii.GetString(b);改过来,,应该可以,如果不考虑速度...
      

  6.   

    baifeng(喝一瓶我会晕~喝三瓶也会晕~) :同意   
    还没测试过,呵呵。
      

  7.   

    如果数祖是byte就可以的,如果是别的就不行了.
      

  8.   

    Samen168(Samen) 的方法真的不错!
      

  9.   

    呵呵。被你例子数组误导了。。Samen168(Samen) 的方法好
      

  10.   

    把数据存入数据库,然后用select 语句就行了。
      

  11.   

    1) String.IndexOf用的是简单的循环搜索,和你自己写出来的两层for循环没什么区别,性能不是最好的。2)这是一个典型的Pattern Match问题,如果目标字符串非常长,可以先对搜索字串做一些预处理,这样就可以保证只扫描目标字串一次。任何数据结构教材都应该有这个算法。3)更普遍的情况,这是一个有限状态自动机问题。类似上面的方法,使用Regular Expression可以保证性能最优化。
      

  12.   

    Samen168(Samen) ( )
    qqchen79(知秋一叶 [MS MVP]) ( 
    两位加到一起的意思就是把byte转成字符串
    然后自己用正则表达式来查找.这样应该IndexOf快一些!支持