2010-06-23 56 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

相關問題