C# 2進位制、8進位制、10進位制、16進位制...各種進位制間的輕鬆轉換
阿新 • • 發佈:2019-01-07
在.NET Framework中,System.Convert類中提供了較為全面的各種型別、數值之間的轉換功能。其中的兩個方法可以輕鬆的實現各種進位制的數值間的轉換:
Convert.ToInt32(string value, int fromBase):
可以把不同進位制數值的字串轉換為數字,其中fromBase引數為進位制的格式,只能是2、8、10及16:
如Convert.ToInt32(”0010”,2)執行的結果為2;
Convert.ToString(int value, int toBase):
可以把一個數字轉換為不同進位制數值的字串格式,其中toBase引數為進位制的格式,只能是2、8、10及16:
如Convert.ToString(2,2)執行的結果為”0010”
現在我們做一個方法實現各種進位制間的字串自由轉換:選把它轉成數值型,然後再轉成相應的進位制的字串:
public string ConvertString(string value, int fromBase, int toBase)
{
int intValue = Convert.ToInt32(value, fromBase);
return Convert.ToString(intValue, toBase);
}
其中fromBase為原來的格式
toBase為將要轉換成的格式
Convert.ToInt32(string value, int fromBase):
可以把不同進位制數值的字串轉換為數字,其中fromBase引數為進位制的格式,只能是2、8、10及16:
如Convert.ToInt32(”0010”,2)執行的結果為2;
Convert.ToString(int value, int toBase):
可以把一個數字轉換為不同進位制數值的字串格式,其中toBase引數為進位制的格式,只能是2、8、10及16:
如Convert.ToString(2,2)執行的結果為”0010”
現在我們做一個方法實現各種進位制間的字串自由轉換:選把它轉成數值型,然後再轉成相應的進位制的字串:
public string ConvertString(string value, int fromBase, int toBase)
{
int intValue = Convert.ToInt32(value, fromBase);
return Convert.ToString(intValue, toBase);
}
其中fromBase為原來的格式
toBase為將要轉換成的格式