【问题标题】:CultureInfo For Swedish瑞典文化信息
【发布时间】:2013-12-27 07:14:24
【问题描述】:

我想将日期时间转换为瑞典文化。

DateTime.Today.ToString("dd MMMM yyyy");

上面的代码行给我的结果是 2013 年 12 月 27 日

我想要以瑞典语显示 12 月的结果。

【问题讨论】:

    标签: c# asp.net culture


    【解决方案1】:

    你应该使用 瑞典文化

    DateTime.Today.ToString("dd MMMM yyyy", CultureInfo.GetCultureInfo("sv-SE"));
    

    如果每个ToString() 都应该使用瑞典语,您可以设置CurrentCulture

      // Or/And CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("sv-SE");
      Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("sv-SE");
      ...
    
      // Since Current Culture is Swedish, there's no need to put it explicitly
      DateTime.Now.ToString("dd MMMM yyyy");    
    

    【讨论】:

    • 谢谢@Dmitry Bychenko
    【解决方案2】:

    如果您不想在使用此方法的任何地方都使用culture 参数,那么您可以通过执行以下一项或多项操作将您的应用程序默认语言设置为瑞典语:

    CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("sv-SE");
    CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("sv-SE");
    Thread.CurrentThread.CurrentUICulture = new CultureInfo("sv-SE");
    Thread.CurrentThread.CurrentCulture = new CultureInfo("sv-SE");
    

    然后,无论您在哪里调用 ToString() 方法,它都会根据您设置的当前文化信息进行字符串化。

    【讨论】:

    • 您不必每次都创建new(相同的)实例。如果您执行CultureInfo.GetCultureInfo("sv-SE"),您将重复使用相同的(缓存的)实例。
    【解决方案3】:
    DateTime.Today.ToString("dd MMMM yyyy", new CultureInfo("sv-SE"));
    

    refer here

    // 创建并初始化使用国际排序的 CultureInfo。

    DateTime.Today.ToString("dd MMMM yyyy",new CultureInfo("sv-SE");
    

    // 创建并初始化使用传统排序的 CultureInfo。

    DateTime.Today.ToString("dd MMMM yyyy",new CultureInfo(0x041D);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-08
      • 2011-09-29
      • 1970-01-01
      • 2014-02-18
      • 2022-01-25
      • 1970-01-01
      • 2021-12-13
      • 1970-01-01
      相关资源
      最近更新 更多