كيف أقرأ قيمة زمنية ثم أدرجها في متغير TimeSpan

StackOverflow https://stackoverflow.com/questions/131944

  •  02-07-2019
  •  | 
  •  

سؤال

كيف أقرأ قيمة زمنية ثم أدرجها في متغيرات TimeSpan؟

هل كانت مفيدة؟

المحلول

إذا فهمت بشكل صحيح أنك تحاول الحصول على بعض مدخلات المستخدم في شكل "08:00" وتريد تخزين الوقت في متغير زمني؟

لذا..شيء من هذا القبيل؟

string input = "08:00";
DateTime time;
if (!DateTime.TryParse(input, out time))
{
    // invalid input
    return;
}

TimeSpan timeSpan = new TimeSpan(time.Hour, time.Minute, time.Second);

نصائح أخرى

من MSDN:يمثل كائن TimeSpan فاصل زمني، أو مدة زمنية، يتم قياسها بعدد موجب أو سالب من الأيام والساعات والدقائق والثواني وكسور الثانية.أكبر وحدة زمنية تستخدم لقياس المدة هي يوم واحد.

إليك كيفية تهيئته إلى CurrentTime (بالعلامات):

TimeSpan ts = new TimeSpan(DateTime.Now.Ticks);
TimeSpan span = new TimeSpan(days,hours,minutes,seconds,milliseonds);

أو إذا كنت تقصد DateTime:

DateTime time = new DateTime(year,month,day,minutes,seconds,milliseconds);

حيث تكون كافة المعلمات ints.

ربما باستخدام:

var span = new TimeSpan(hours, minutes, seconds);

إذا كنت تقصد إضافة نطاقين زمنيين معًا، فاستخدم:

var newSpan = span.Add(new TimeSpan(hours, minutes, seconds));

لمزيد من المعلومات، راجع msdn.

لا يمكنك تغيير خصائص TimeSpan.تحتاج إلى إنشاء مثيل جديد وتمرير القيم الجديدة هناك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top