public static string GetSuperShortTime(DateTime dt) { if (formatInfo_GetSuperShortTime == null) { lock ( lock_GetSuperShortTime ) { StringBuilder result = new StringBuilder(string.Empty); string seconds; formatInfo_GetSuperShortTime = ( DateTimeFormatInfo )CultureInfo.CurrentCulture.DateTimeFormat.Clone(); result.Append(formatInfo_GetSuperShortTime.LongTimePattern); seconds = rxSeconds.Match(result.ToString()).Value; result.Replace(" ", string.Empty); result.Replace(seconds, string.Empty); if (!(DateTimeFormatHelper.IsCurrentCultureJapanese() || DateTimeFormatHelper.IsCurrentCultureKorean() || DateTimeFormatHelper.IsCurrentCultureHungarian())) { result.Replace(DoubleMeridiemDesignator, SingleMeridiemDesignator); } formatInfo_GetSuperShortTime.ShortTimePattern = result.ToString(); } } return(dt.ToString("t", formatInfo_GetSuperShortTime).ToLowerInvariant()); }