Csharp/C Sharp by API/System.Globalization/NumberFormatInfo
Содержание
new NumberFormatInfo()
<source lang="csharp"> using System; using System.Globalization; using System.Text; public class NumParsingApp {
public static void Main(string[] args) { string u = "AA -1,234,567.890 "; NumberFormatInfo ni = new NumberFormatInfo(); ni.CurrencySymbol = "AA"; double h = Double.Parse(u, NumberStyles.Any, ni); Console.WriteLine("h = {0:F}", h); }
}
</source>
NumberFormatInfo.CurrencyGroupSeparator
<source lang="csharp"> using System; using System.Collections.Generic; using System.Globalization; using System.Text; using System.Text.RegularExpressions; using System.Reflection; public class MainClass{
public static void Main(){ string[] money = new string[] { "$0.99", "$0,99", "$1000000.00", "$10.25", "$90,000.00", "$90.000,00", "$1,000,000.00", "$1,000000.00" }; NumberFormatInfo info = CultureInfo.CurrentCulture.NumberFormat; Regex moneyint = new Regex(String.Format(@"\{0}(\dШаблон:1,3\{0})*\d+\{1}\dШаблон:2", info.CurrencyGroupSeparator, info.CurrencyDecimalSeparator)); foreach (string m in money) { Console.WriteLine("{0}: {1}", m, moneyint.IsMatch(m)); } }
}
</source>
NumberFormatInfo.CurrencySymbol
<source lang="csharp"> using System; using System.Globalization; class MainClass {
public static void Main() { CultureInfo ci = new CultureInfo("nl-BE"); NumberFormatInfo nfi = ci.NumberFormat; Console.WriteLine("Currency symbol: " + nfi.CurrencySymbol); Console.WriteLine("Decimal seperator: " + nfi.NumberDecimalSeparator); }
}
</source>
NumberFormatInfo.NumberDecimalSeparator
<source lang="csharp"> using System; using System.Globalization; class MainClass {
public static void Main() { CultureInfo ci = new CultureInfo("nl-BE"); NumberFormatInfo nfi = ci.NumberFormat; Console.WriteLine("Currency symbol: " + nfi.CurrencySymbol); Console.WriteLine("Decimal seperator: " + nfi.NumberDecimalSeparator); }
}
</source>
NumberFormatInfo.NumberGroupSeparator
<source lang="csharp"> using System; using System.Globalization; using System.Threading;
class Class1 {
static void Main(string[] args) { CultureInfo MyCulture = new CultureInfo(Thread.CurrentThread.CurrentUICulture.LCID); NumberFormatInfo Vnf = new NumberFormatInfo(); Console.WriteLine(123456.ToString("c", MyCulture)); Vnf = MyCulture.NumberFormat; Vnf.CurrencyDecimalSeparator = ","; Vnf.CurrencyGroupSeparator = "."; Vnf.NumberDecimalSeparator = ","; Vnf.NumberGroupSeparator = "."; MyCulture.NumberFormat = Vnf; Console.WriteLine(123456.ToString("C", MyCulture)); }
}
</source>