zoukankan      html  css  js  c++  java
  • Indexof String By Byte[]


            
    /// <summary>在字节数组里搜索字符串key第一次出现的位置
            
    /// </summary>
            
    /// <param name="b1">字节数组</param>
            
    /// <param name="key">字符串</param>
            
    /// <returns>搜索为空返回-1</returns>
            public static int BytesIndexOf(byte[] b1, string key)
            {
                
    byte[] keyByte = System.Text.Encoding.Default.GetBytes(key);

                
    for (int i = 0; i < b1.Length; i++)
                {
                    
    if (b1[i] == keyByte[0&& i + keyByte.Length < b1.Length)
                    {
                        
    bool tag = true;
                        
    for (int find = 1; find < keyByte.Length - 1; find++)
                            
    if (b1[i + find] != keyByte[find]) tag = false;
                        
    if (tag) return i;
                    }
                }
                
    return -1;
            }


            
    /// <summary>在字节数组里从指定位置开始搜索字符串key第一次出现的位置
            /// </summary>
            
    /// <param name="b1">字节数组</param>
            /// <param name="start">开始搜索位置</param>
            /// <param name="key">字符串</param>
            /// <returns>搜索为空返回-1</returns>
            public static int BytesIndexOf(byte[] b1, int start, string key)
            {
                
    byte[] keyByte = System.Text.Encoding.Default.GetBytes(key);

                
    for (int i = start; i < b1.Length; i++)
                {
                    
    if (b1[i] == keyByte[0&& i + keyByte.Length < b1.Length)
                    {
                        
    bool tag = true;
                        
    for (int find = 1; find < keyByte.Length - 1; find++)
                            
    if (b1[i + find] != keyByte[find]) tag = false;
                        
    if (tag) return i;
                    }
                }
                
    return -1;
            }

  • 相关阅读:
    元旦快乐,送大家一条水晶龙
    小随笔:利用Shader实现模型爆炸和沙粒化的效果
    小随笔:利用Shader给斯坦福兔子长毛和实现雪地效果
    #UnityTips# 2017.11.14
    微软Tech Summit 2017,微软携手Unity打造MR之夜
    FixedUpdate真的是固定的时间间隔执行吗?聊聊游戏定时器
    第9期Unity User Group Beijing图文报道:《Unity实战经验分享》
    利用GPU实现无尽草地的实时渲染
    大数据学习笔记01-HDFS-集群安装
    Guava学习笔记(三):集合
  • 原文地址:https://www.cnblogs.com/bruceleeliya/p/1631422.html
Copyright © 2011-2022 走看看