2 changed files with 36 additions and 2 deletions
@ -1,11 +1,42 @@
@@ -1,11 +1,42 @@
|
||||
using System.Collections; |
||||
using System.Collections.Generic; |
||||
using UnityEngine; |
||||
using LitJson; |
||||
using System; |
||||
|
||||
namespace JXSoft { |
||||
//协议规则解析通用方法扩展 |
||||
public static class ProtocolRulesExtention |
||||
{ |
||||
|
||||
/// <summary> |
||||
/// 根据Byte类型数据获取对应的值。 |
||||
/// </summary> |
||||
/// <param name="self">只能包含A-F,0-9</param> |
||||
/// <param name="start">起始位置</param> |
||||
/// <param name="length">长度</param> |
||||
/// <returns></returns> |
||||
public static byte[] toByteArray(this string self) { |
||||
int hexlen = self.Length; |
||||
byte[] result; |
||||
if (hexlen % 2 == 1) |
||||
{ |
||||
//奇数 |
||||
hexlen++; |
||||
result = new byte[(hexlen / 2)]; |
||||
self += "0" ; |
||||
} |
||||
else |
||||
{ |
||||
//偶数 |
||||
result = new byte[(hexlen / 2)]; |
||||
} |
||||
int j = 0; |
||||
for (int i = 0; i < hexlen; i += 2) |
||||
{ |
||||
result[j] = (byte)int.Parse(self.Substring(i, 2), System.Globalization.NumberStyles.HexNumber); |
||||
j++; |
||||
} |
||||
return result; |
||||
} |
||||
} |
||||
} |
||||
|
Loading…
Reference in new issue