16进制字符串转字符

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

/// <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);

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航