2010-06-23 51 views

回答

1

Wellll ...我不知道这个“一个功能”的答案。你需要知道他们在哪里。如果它是一个web应用程序,你可以追踪他们的知识产权并找出他们来自哪个国家。如果它是一个Windows应用程序,你可能需要问他们(时钟只提供时区信息,我无法弄清楚从Windows获取更细粒度的位置的其他位置)。

你可以计算出它是什么日子与GetDayofWeek http://msdn.microsoft.com/en-us/library/1wzak8d0%28VS.80%29.aspx在MFC

星期几,如果你跳到.NET http://msdn.microsoft.com/en-us/library/system.dayofweek.aspx

您需要与国家/什么日子,他们认为周末的查找表..你可能不得不建造这一点,但你可以从国家的名单:http://www.iso.org/iso/english_country_names_and_code_elements

这份名单是ISO 3166

它的更新,并应哟您的“一站式商店”的上市。从那里,你会匹配“周末”的国家。 http://en.wikipedia.org/wiki/Workweek可能有助于确定各国的周末/工作周。

+0

尼斯报价在简介中,顺便说一句。 – Constantin 2010-06-23 15:24:54

+0

谢谢!这是否解决你的问题/解释一些事情? – Caladain 2010-06-24 18:36:23

+0

是的,这很有帮助。我只是在接受之前给别人一个机会。 – Constantin 2010-06-25 17:44:48

0

ICU项目可能会有帮助。它专为软件内部化和全球化而设计。 C/C++和Java版本可用。

icu-project.org

1

下面的代码将提供它是否被认为是周末,与不同文化背景的选项(如周末开始/在不同的一天结束):

/// <summary> 
    /// Returns true if the specified date is weekend in given culture 
    /// is in. 
    /// </summary> 
    public static bool IsItWeekend(DateTime currentDay, CultureInfo cultureInfo) 
    { 
     bool isItWeekend = false; 

     DayOfWeek firstDay = cultureInfo.DateTimeFormat.FirstDayOfWeek; 

     DayOfWeek currentDayInProvidedDatetime = currentDay.DayOfWeek; 

     DayOfWeek lastDayOfWeek = firstDay + 4; 

     if (currentDayInProvidedDatetime == lastDayOfWeek + 1 || currentDayInProvidedDatetime == lastDayOfWeek + 2) 
      isItWeekend = true; 

     return isItWeekend;   
    } 
+0

所以如果.FirstDayOfWeek ==星期五它真的会起作用吗?乍一看,它看起来像“%7”缺失。 – Constantin 2013-11-13 22:39:26

相关问题