When you have different format strings, this does not mean that you have to use InvariantCulture. If you have a format string for germany e.g. you format this string using the Culture("de-de"):
String.Format(CultureInfo.GetCultureInfo( "de-de" ), "{0:0},-", 2295) //will result in 2.295,-
String.Format(CultureInfo.GetCultureInfo( "en-us" ), "{0:0},-", 2295) //will result in 2,295,-
Alternatively you can specify your custom number format info:
NumberFormatInfo nfi = new NumberFormatInfo( )
{
CurrencyGroupSeparator = ":"
};
String.Format(nfi, "{0:0},-", 2295) //will result in 2:295,-
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…