Настройте точку вместо запятой в числовых значениях
У меня есть новый объект XmlDocument, т.е. xml создается во время моей программы...
Я хочу, чтобы все числовые значения в созданном xml были по умолчанию с символом точки вместо запятой.
Могу ли я сделать что-то, чтобы объявить его один раз, а не анализировать каждое десятичное значение?
т.е. Чтобы настроить эту точку вместо запятой где-то в начале и не беспокоиться об этом до конца?
Ответы
Ответ 1
Попробуйте следующее:
System.Globalization.CultureInfo customCulture = (System.Globalization.CultureInfo)System.Threading.Thread.CurrentThread.CurrentCulture.Clone();
customCulture.NumberFormat.NumberDecimalSeparator = ".";
System.Threading.Thread.CurrentThread.CurrentCulture = customCulture;
Ответ 2
Вы можете использовать value.ToString(CultureInfo.InvariantCulture)
для преобразования числовых значений в строки. Или вы можете глобально изменить текущую культуру на культуру, которая использует точку в качестве разделителя десятичной дроби:
Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("en-US");
Ответ 3
Используйте Decimal.ToString(..) с System.Globalization.CultureInfo.InvariantCulture
как применяемый параметр.
или если вы хотите сделать это глобально, используйте
CurrentCulture установить всегда Invariant
один, используя свойство Applicaton.CurrentCulture.