/// <summary>
/// 将16进制数据字符串,接两位两位进行10进制转,
/// 各数据之间用分号隔开
/// </summary>
/// <param name="str">16进制数据字符串</param>
/// <returns>返回两位两位进行分割的10进制结果(数之间用分号)</returns>
private string get16from10(string str)
{
string myStr = string.Empty;
string mytp1 = string.Empty;
string mytp2 = string.Empty;
ArrayList myAr = new ArrayList();
//判断长度,若为奇位,则对字符串第一位进行处理
if((str.Length % 2) != 0)
{
mytp1 = str.Substring(0,1);
mytp1 = (Convert.ToInt32(mytp1,16)).ToString();
}
//对偶数位字符串进行处理
for(int i=str.Trim().Length-2;i>=0;i=i-2)
{
mytp2 = str.Substring(i,2);
mytp2 = (Convert.ToInt32(mytp2,16)).ToString();
myStr = mytp2+";"+myStr;
}
myStr = mytp1+";"+myStr;
//最后,对结果串中多余分号进行删除。
if((str.Length % 2) != 0)
{
myStr = myStr.Substring(0,myStr.Length-1);
}
else
{
myStr = myStr.Substring(1,myStr.Length-2);
}
return myStr;
}
时间不多,实现算法不怎么样,希望大家指点。
/// 将16进制数据字符串,接两位两位进行10进制转,
/// 各数据之间用分号隔开
/// </summary>
/// <param name="str">16进制数据字符串</param>
/// <returns>返回两位两位进行分割的10进制结果(数之间用分号)</returns>
private string get16from10(string str)
{
string myStr = string.Empty;
string mytp1 = string.Empty;
string mytp2 = string.Empty;
ArrayList myAr = new ArrayList();
//判断长度,若为奇位,则对字符串第一位进行处理
if((str.Length % 2) != 0)
{
mytp1 = str.Substring(0,1);
mytp1 = (Convert.ToInt32(mytp1,16)).ToString();
}
//对偶数位字符串进行处理
for(int i=str.Trim().Length-2;i>=0;i=i-2)
{
mytp2 = str.Substring(i,2);
mytp2 = (Convert.ToInt32(mytp2,16)).ToString();
myStr = mytp2+";"+myStr;
}
myStr = mytp1+";"+myStr;
//最后,对结果串中多余分号进行删除。
if((str.Length % 2) != 0)
{
myStr = myStr.Substring(0,myStr.Length-1);
}
else
{
myStr = myStr.Substring(1,myStr.Length-2);
}
return myStr;
}
时间不多,实现算法不怎么样,希望大家指点。