Мне нравится форматировать все числа как в математике. существует ли предопределенная функция, или это просто возможно с подстрокой и заменой?
править: моя культура является de-ch
С уважением
Попробуйте это
int input = Convert.ToInt32("1700");
string result = String.Format("{0:##,##}", input);
или это
Console.WriteLine(1700.ToString("##,##", new NumberFormatInfo() { NumberGroupSeparator = "'" }));
var numformat = new NumberFormatInfo {
NumberGroupSeparator = "'",
NumberGroupSizes = new int[] { 3 },
NumberDecimalSeparator = "."
};
Console.WriteLine(1000000.ToString("N",numformat));
Попробуйте это:
Console.WriteLine(1000000.ToString("#,##0").Replace(
CultureInfo.CurrentCulture.NumberFormat.NumberGroupSeparator, "'"));
или
NumberFormatInfo likeInMath = new NumberFormatInfo()
{
NumberGroupSeparator = "'"
};
Console.WriteLine(1000000.ToString("#,##0", likeInMath));
Использование int.tostring () и IFormatProvider .
Также посмотрите здесь MSDN.
Я всегда использую этот формат
"#,##0;#,##0'-';0"
, чтобы вы могли использовать его в
int input = Convert.ToInt32("100000000");
string result = String.Format("{#,##0;#,##0'-';0}", input);