原文:
c# 進製轉換(二進位制、十六進製制、十進位制互轉)
//1.請問c#中如何將十進位制數的字串轉化成十六進製制數的字串
//十進位制轉二進位制
console.writeline("十進位制166的二進位制表示: "+convert.tostring(166, 2));
//十進位制轉八進位制
console.writeline("十進位制166的八進位制表示: "+convert.tostring(166, 8));
//十進位制轉十六進製制
console.writeline("十進位制166的十六進製制表示: "+convert.tostring(166, 16));
//二進位制轉十進位制
console.writeline("二進位制 111101 的十進位制表示: "+convert.toint32("111101", 2));
//八進位制轉十進位制
console.writeline("八進位制 44 的十進位制表示: "+convert.toint32("44", 8));
//十六進製制轉十進位制
console.writeline("十六進製制 cc的十進位制表示: "+convert.toint32("cc", 16));
//2.在串列埠通訊過程中,經常要用到 16進製制與字串、位元組陣列之間的轉換
private string stringtohexstring(string s,encoding encode)
return result;
}private string hexstringtostring(string hs, encoding encode)
,stringsplitoptions.removeemptyentries);
byte b = new byte[chars.length];
//逐個字元變為16進製制位元組資料
for (int i = 0; i < chars.length; i++)
//按照指定編碼將位元組陣列變為字串
return encode.getstring(b);
}/// /// 字串轉16進製制位元組陣列
///
///
///
private static byte strtotohexbyte(string hexstring)
/// /// 位元組陣列轉16進製制字串
///
///
///
public static string bytetohexstr(byte bytes)
} return returnstr;
}/// /// 從漢字轉換到16進製制
///
///
/// 編碼,如"utf-8","gb2312"
/// 是否每字元用逗號分隔
///
public static string tohex(string s, string charset, bool fenge)
system.text.encoding chs = system.text.encoding.getencoding(charset);
byte bytes = chs.getbytes(s);
string str = "";
for (int i = 0; i < bytes.length; i++)
", bytes[i]);
if (fenge && (i != bytes.length - 1))
", ",");
}} return str.tolower();
}////// 從16進製制轉換成漢字
///
///
/// 編碼,如"utf-8","gb2312"
///
public static string unhex(string hex, string charset)
// 需要將 hex 轉換成 byte 陣列。
byte bytes = new byte[hex.length / 2];
for (int i = 0; i < bytes.length; i++)
catch
}system.text.encoding chs = system.text.encoding.getencoding(charset);
return chs.getstring(bytes);
}
十進位制 二進位制 十六進製制轉換
十進位制轉二進位制 十六進製制我覺得最簡單也最方便的辦法就是直接用計算器算了。如果不依賴工具,那我們要如何去計算呢。先來說說二進位制。最多見的是短除法。所謂短除法大家可以去看看 這個百科裡面的詳細明了的解釋。我想補充的一點是 如果你嫌短除法太過於麻煩,可以在拿到乙個二進位制數的時候直接用2 n去減。...
C 進製轉換(二進位制 十六進製制 十進位制互轉)
由於二進位制數在c 中無法直接表示,所以所有二進位制數都用乙個字串來表示 例如 二進位制 1010 表示為 字串 1010 c int d 10 十進位制轉二進位制字串 console.writeline convert.tostring d,2 輸出 1010 十進位制轉十六進製制字串 conso...
C 進製轉換 二進位制 十六進製制 十進位制互轉
c 進製轉換 二進位制 十六進製制 十進位制互轉 由於二進位制數在c 中無法直接表示,所以所有二進位制數都用乙個字串來表示 例如 二進位制 1010 表示為 字串 1010 int d 10 十進位制轉二進位制字串 console.writeline convert.tostring d,2 輸出 ...