/// <summary> /// 16进制转字符 /// </summary> /// <param name="str1"></param> /// <returns></returns> public string HexToStr(string str1) { string returnValue = "";
if(str1=="") return "";
byte[] w = new byte[str1.Length/2];
for(int i = 0;i<str1.Length;i++) { w[i] = HexToStr(str1,i+1); }
returnValue = System.Text.Encoding.Default.GetString(w); return returnValue; } /// <summary> /// 16进制转字符 /// </summary> /// <param name="str1"></param> /// <param name="spage"></param> /// <returns></returns> byte HexToStr(string str1,int spage) { string returnValue; int intTemp; int ipage = Convert.ToInt32(spage); int StartInt = 0; int iLengthInt = 2;
intTemp = str1.Length;//取得字符串长度 if(ipage==1) { StartInt = 0; iLengthInt = 2; } else { StartInt = (ipage-1) * iLengthInt;
if((intTemp-ipage*2)<2) { iLengthInt = intTemp-(ipage-1)*2; } else { iLengthInt = 2; } }
returnValue = str1.Substring(StartInt,iLengthInt);
returnValue = ConvertString(returnValue,16,10);
return Convert.ToByte(returnValue); }
/// <summary> /// ConvertString(值,來源进制,目的进制); /// </summary> /// <param name="value"></param> /// <param name="fromBase"></param> /// <param name="toBase"></param> /// <returns></returns> string ConvertString(string value, int fromBase, int toBase) { int intValue = Convert.ToInt32(value, fromBase); return Convert.ToString(intValue, toBase); } 
|