2013-10-03 88 views
3

我想要這個「123456789」到這個「123,456,789」。如何將千位分隔符添加到c#中的數字字符串?

大量的SO回答如何使用.Format().ToString()數字格式化非字符串類型。找不到數字字符串如何做的任何答案。

我能做到這一點的方式,但它的效果並不理想:

Convert.ToInt32(minPrice).ToString("N0"); 
+2

爲什麼不理想? –

+0

@SystemDown - 因爲它已經是一個字符串並將其轉換爲一個int,所以返回一個字符串似乎不必要,只是將它以不同的格式返回給字符串。 – johntrepreneur

+0

另一種方法是手動瀏覽字符串以找到插入逗號的適當位置,這可能會更昂貴。 –

回答

9

簡單的封裝你的功能,你找到的是不理想的,爲擴展方法。

public static string ToFormattedThousands(this string number) 
{ 
    return Convert.ToInt32(number).ToString("N0"); 
} 

簡單地把這個功能變成一個靜態類,然後你就可以調用它的任何

例如:

string myString = "123456789".ToFormattedThousands(); 
相關問題