Derive Number Format info from culture info

image_pdfimage_print


   


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();

      Vnf = MyCulture.NumberFormat;
      Vnf.CurrencyDecimalSeparator = ",";
      Vnf.CurrencyGroupSeparator = ".";
      Vnf.NumberDecimalSeparator = ",";
      Vnf.NumberGroupSeparator = ".";
      MyCulture.NumberFormat = Vnf;

      CultureInfo FRCulture = new CultureInfo("fr-FR");


      MyCulture.NumberFormat = FRCulture.NumberFormat;
      Console.WriteLine(123456.ToString("c", MyCulture));

   }
}

           
          


Create culture info from CurrentUICulture

image_pdfimage_print


   


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));

   }
}

           
          


Set Culture to current thread

image_pdfimage_print


   


using System;
using System.Globalization;
using System.Threading;

class Class1 {
  static void Main(string[] args) {
      CultureInfo MyCulture = new CultureInfo("fr-FR");
      DateTime MyDate = System.DateTime.Now;

      Thread.CurrentThread.CurrentCulture = MyCulture;

      DateTimeFormatInfo dtf = MyCulture.DateTimeFormat;
      //Change date and time separator
      dtf.DateSeparator = "";
      dtf.TimeSeparator = "&";

      Console.WriteLine();
      Console.WriteLine(MyDate.ToLongDateString());
      Console.WriteLine(MyDate.ToLongTimeString());
      Console.WriteLine(MyDate.ToShortDateString());
      Console.WriteLine(MyDate.ToShortTimeString());
   }
}


           
          


Create Culture info for fr-FR

image_pdfimage_print


   


using System;
using System.Globalization;
using System.Threading;

class Class1 {
  static void Main(string[] args) {
      CultureInfo MyCulture = new CultureInfo("fr-FR");
      DateTime MyDate = System.DateTime.Now;

      Thread.CurrentThread.CurrentCulture = MyCulture;

      Console.WriteLine(MyDate.ToLongDateString());
      Console.WriteLine(MyDate.ToLongTimeString());
      Console.WriteLine(MyDate.ToShortDateString());
      Console.WriteLine(MyDate.ToShortTimeString());

      
   }
}


           
          


Create Culture info in es-US

image_pdfimage_print
   


using System;
using System.Globalization;

class Class1 {
  static void Main(string[] args) {
         CultureInfo MyCulture = new CultureInfo("es-ES");
         DateTimeFormatInfo Myfmt;
         DateTimeFormatInfo fmt1;

         Myfmt = MyCulture.DateTimeFormat;
         fmt1  = DateTimeFormatInfo.CurrentInfo;

         Console.WriteLine(Myfmt.GetMonthName(12));
         Console.WriteLine(fmt1.GetMonthName(12));
      }
}


           
          


Use CultureAndRegionInfoBuilder

image_pdfimage_print
   


using System;
using System.Collections.Generic;
using System.Text;
using System.Globalization;



class Program {
    static void Main(string[] args) {

        CultureAndRegionInfoBuilder styria = new CultureAndRegionInfoBuilder(
            "de-AT-ST", CultureAndRegionModifiers.None);
        styria.LoadDataFromCultureInfo(new CultureInfo("de-AT"));
        styria.LoadDataFromRegionInfo(new RegionInfo("AT"));

        styria.Register();

    }
}