2
我試圖從一個配置文件讀入一串無符號整數到一個類中。這些數字可以在base-10(例如:1234)或base-16(例如:0xAB31)中指定。因此在C#2.0中尋找等效的strtoul
。strtoul相當於C#
更具體地說,我感興趣的是一個C#函數,它在模擬此函數的行爲時,指示基數或基數的參數被傳入爲零。 (在C++中,strtoul
會嘗試基於字符串中的第一對字符猜出基數或基數,然後繼續轉換數字)
當前我手動檢查前兩個字符(使用string.Substring()
方法),然後根據需要調用Convert.ToUInt32(hex, 10)
或Convert.ToUInt32(hex, 16)
。
我確信必須有更好的方法來處理這個問題,因此這篇文章。更優雅的想法/解決方案或解決方案將是很大的幫助。
感謝您使用更簡潔的語法。我沒有想到使用'StartsWith()'。我正在閱讀大約50個值,所以輕微的表現沒問題。此外,這是否意味着沒有庫函數來執行此操作? (在C#中定製/自己實現'strtoul'看起來對於這個小問題的矯枉過正恕我直言) – 2011-05-21 07:05:40
@Bhargav:這意味着我不知道*庫函數做這個:) – 2011-05-21 07:10:00