2
我想知道的東西。而不是編寫String.Format("{0:X}", num);
將數字轉換爲十六進制。有沒有一種方法可以直接擴展字符串,以便我可以簡單地編寫num.ToHex();
?擴展類型定製類
我想知道的東西。而不是編寫String.Format("{0:X}", num);
將數字轉換爲十六進制。有沒有一種方法可以直接擴展字符串,以便我可以簡單地編寫num.ToHex();
?擴展類型定製類
您可以創建擴展方法:
public static class IntExtensions
{
public static string ToHex(this int source)
{
return string.Format("{0:X}", source);
}
}
執行這樣的:
string hexNum = 1234.ToHex();
這就是所謂的extension method。但是,應該在數字類型來設置,允許{0:X}
string format:
public static class Extensions
{
public static string ToHex(this int source)
{
return string.Format("{0:X}", source);
}
}
如果'num'不是一個字符串? – Ofiris
這可以在任何類型上完成,只需將StringExtensions切換爲FloatExtensions作爲示例? –
Ofiris它快速回答,所以我使用了錯誤的數據類型,但我已經編輯了我的答案。 @ThomasAndreèLian是的,這也可以用於浮動,但是你將不得不改變'ToHex(這個int源)'到'ToHex(這個雙源)'。 – Zbigniew