में विंडोज टाइम जोन संक्षेप में क्या वे भी मौजूद हैं? मैं अपने यूरोपीय उपयोगकर्ताओं को "रोमांस मानक समय" प्रदर्शित करने और "सीईटी" के रूप में प्रदर्शित क्यों नहीं किया जा सकता है, यह समझाने की कोशिश कर रहा हूं कि मैं "रोमांस मानक समय" प्रदर्शित करने में वास्तव में बीमार हूं। अगर मैंने "रोमांस स्टैंडर्ड टाइम" का विश्लेषण किया और उन्हें "आरएसटी" के साथ प्रस्तुत किया जो उनके लिए अर्थहीन होगा, या संभवतः "रूसी मानक समय" या अन्य बकवास के रूप में उलझन में होगा।एएसपी.NET
क्या विंडोज़ से आम तौर पर स्वीकार्य संक्षेप प्राप्त करने का कोई तरीका नहीं है? मुझे ऐसा कुछ चाहिए जो उत्तरी अमेरिका, दक्षिण अमेरिका, यूरोप, अफ्रीका और एशिया में काम करता हो।
अद्यतन: यह कुल हैक है, मुझे पता है, लेकिन मुझे उन मामलों में से 9 0% मामले मिलेंगे जिनकी मुझे परवाह है। आप सुझाव देना चाहते हैं, मैं अभी भी सब कान हूँ,)
/// <summary>
/// Gets the current time zone abbreviation, corrected for Daylight Saving Time (if applicable)
/// </summary>
/// <param name="timeZoneId">The time zone id.</param>
/// <returns></returns>
public static string GetTZAbbrev(string timeZoneId)
{
var timeZoneInfos = TimeZoneInfo.GetSystemTimeZones();
var abbrev = string.Empty;
foreach (var timeZoneInfo in timeZoneInfos)
{
if (timeZoneInfo.Id != timeZoneId) continue;
string[] words;
if (timeZoneInfo.IsDaylightSavingTime(DateTime.UtcNow))
{
words = timeZoneInfo.DaylightName.Split(' ');
}
else
{
words = timeZoneInfo.StandardName.Split(' ');
}
foreach (var word in words)
{
abbrev += word[0];
}
}
return abbrev;
}
नोडाटाइम अब avialble है http://nodatime.org/ – Jodrell