Hex2Byte() private static method

private static Hex2Byte ( byte b, int offset ) : byte
b byte
offset int
return byte
コード例 #1
0
 public static byte[] Decode(byte[] input, byte escapeChar, byte space)
 {
     byte[] result;
     using (MemoryStream memoryStream = new MemoryStream(input.Length))
     {
         for (int i = 0; i < input.Length; i++)
         {
             if (input[i] == space)
             {
                 memoryStream.WriteByte(32);
             }
             else if (input[i] == escapeChar && i + 2 < input.Length)
             {
                 i++;
                 memoryStream.WriteByte(WWWTranscoder.Hex2Byte(input, i++));
             }
             else
             {
                 memoryStream.WriteByte(input[i]);
             }
         }
         result = memoryStream.ToArray();
     }
     return(result);
 }
コード例 #2
0
 public static byte[] Decode(byte[] input, byte escapeChar, byte[] space)
 {
     byte[] result;
     using (MemoryStream memoryStream = new MemoryStream(input.Length))
     {
         for (int i = 0; i < input.Length; i++)
         {
             bool flag = WWWTranscoder.ByteSubArrayEquals(input, i, space);
             if (flag)
             {
                 i += space.Length - 1;
                 memoryStream.WriteByte(32);
             }
             else
             {
                 bool flag2 = input[i] == escapeChar && i + 2 < input.Length;
                 if (flag2)
                 {
                     i++;
                     memoryStream.WriteByte(WWWTranscoder.Hex2Byte(input, i++));
                 }
                 else
                 {
                     memoryStream.WriteByte(input[i]);
                 }
             }
         }
         result = memoryStream.ToArray();
     }
     return(result);
 }
コード例 #3
0
 public static byte[] Decode(byte[] input, byte escapeChar, byte space)
 {
     using (MemoryStream memoryStream1 = new MemoryStream(input.Length))
     {
         for (int index = 0; index < input.Length; ++index)
         {
             if ((int)input[index] == (int)space)
             {
                 memoryStream1.WriteByte((byte)32);
             }
             else if ((int)input[index] == (int)escapeChar && index + 2 < input.Length)
             {
                 int          num1          = index + 1;
                 MemoryStream memoryStream2 = memoryStream1;
                 byte[]       b             = input;
                 int          offset        = num1;
                 int          num2          = 1;
                 index = offset + num2;
                 int num3 = (int)WWWTranscoder.Hex2Byte(b, offset);
                 memoryStream2.WriteByte((byte)num3);
             }
             else
             {
                 memoryStream1.WriteByte(input[index]);
             }
         }
         return(memoryStream1.ToArray());
     }
 }