【问题标题】:A less ugly way to localize DayOfWeek? [duplicate]一种不那么丑陋的方式来本地化 DayOfWeek? [复制]
【发布时间】:2011-05-02 23:38:44
【问题描述】:
using System;

namespace Server.Custom.Extensions
{
    public static class FriendlyExtensions
    {
        public static string Friendly(this DayOfWeek day)
        {
            if (day == DateTime.Now.DayOfWeek)
                return "Hoy";

            int dayOfWeek = (int)DateTime.Now.DayOfWeek;
            int dayOfEvent = (int)day;

            if (dayOfWeek + 1 == dayOfEvent || (dayOfWeek == 6 && dayOfEvent == 0))
                return "Mañana";

            switch (day)
            {
                default:
                case DayOfWeek.Monday: return "Lunes";
                case DayOfWeek.Tuesday: return "Martes";
                case DayOfWeek.Wednesday: return "Miercoles";
                case DayOfWeek.Thursday: return "Jueves";
                case DayOfWeek.Friday: return "Viernes";
                case DayOfWeek.Saturday: return "Sabado";
                case DayOfWeek.Sunday: return "Domingo";
            }
        }
    }
}

有什么方法可以用 Cultures 本地化它吗?如何? :( 顺便说一句,我也希望它说“今天”或“明天”,而不仅仅是转换日期

【问题讨论】:

  • 你能找到一个可以完成这项工作的 l10n 库吗?
  • 您在获取日期名称方面得到了很好的答案。 “今天”和“明天”没有内置翻译。
  • @Nico 你为什么接受 FerranB 的回答?它与问题无关。

标签: c# localization culture


【解决方案1】:
DateTime.Now.ToString("ddd", new CultureInfo("es-ES"));

DateTime.Now.ToString("dddd", new CultureInfo("es-ES"));

参考资料:

【讨论】:

  • -1 这如何回答这个问题?
【解决方案2】:

来自here(见底部)的这段代码可能会让您走上正轨。

 CultureInfo german = new CultureInfo("de-DE");
 DateTimeFormatInfo dtfi = german.DateTimeFormat;

 Console.WriteLine("Days of the week for the {0} culture:",
                    german.Name);
 for (int ctr = 0; ctr < dtfi.DayNames.Length; ctr++)
    Console.WriteLine("   {0,-12}{1}", dtfi.DayNames[ctr],
                      dtfi.DayNames[ctr] == dtfi.DayNames[(int)dtfi.FirstDayOfWeek] ? 
                            "(First Day of Week)" : "");  

【讨论】:

    猜你喜欢
    • 2010-12-23
    • 2011-02-03
    • 2020-06-11
    • 1970-01-01
    • 2011-09-21
    • 2011-09-05
    • 2018-06-11
    • 2011-08-11
    • 1970-01-01
    相关资源
    最近更新 更多