Rhino.NativeDate.Date_format C# (CSharp) Method

Date_format() private static method

private static Date_format ( double t, int methodId ) : string
t double
methodId int
return string
		private static string Date_format(double t, int methodId)
		{
			StringBuilder result = new StringBuilder(60);
			double local = LocalTime(t);
			if (methodId != Id_toTimeString)
			{
				AppendWeekDayName(result, WeekDay(local));
				result.Append(' ');
				AppendMonthName(result, MonthFromTime(local));
				result.Append(' ');
				Append0PaddedUint(result, DateFromTime(local), 2);
				result.Append(' ');
				int year = YearFromTime(local);
				if (year < 0)
				{
					result.Append('-');
					year = -year;
				}
				Append0PaddedUint(result, year, 4);
				if (methodId != Id_toDateString)
				{
					result.Append(' ');
				}
			}
			if (methodId != Id_toDateString)
			{
				Append0PaddedUint(result, HourFromTime(local), 2);
				result.Append(':');
				Append0PaddedUint(result, MinFromTime(local), 2);
				result.Append(':');
				Append0PaddedUint(result, SecFromTime(local), 2);
				// offset from GMT in minutes.  The offset includes daylight
				// savings, if it applies.
				int minutes = (int)Math.Floor((LocalTZA + DaylightSavingTA(t)) / msPerMinute);
				// map 510 minutes to 0830 hours
				int offset = (minutes / 60) * 100 + minutes % 60;
				if (offset > 0)
				{
					result.Append(" GMT+");
				}
				else
				{
					result.Append(" GMT-");
					offset = -offset;
				}
				Append0PaddedUint(result, offset, 4);
				if (timeZoneFormatter == null)
				{
					timeZoneFormatter = new SimpleDateFormat("zzz");
				}
				// Find an equivalent year before getting the timezone
				// comment.  See DaylightSavingTA.
				if (t < 0.0)
				{
					int equiv = EquivalentYear(YearFromTime(local));
					double day = MakeDay(equiv, MonthFromTime(t), DateFromTime(t));
					t = MakeDate(day, TimeWithinDay(t));
				}
				result.Append(" (");
				DateTime date = Sharpen.Extensions.CreateDate((long)t);
				lock (timeZoneFormatter)
				{
					result.Append(timeZoneFormatter.Format(date));
				}
				result.Append(')');
			}
			return result.ToString();
		}