ForHosting KIT · التواريخ والوقت

تحويل التاريخ إلى ticks .NET

يوم 29 فبراير 2024 الساعة 12:34:56.1234567 بفرق توقيت +02:30 يساوي 638447978961234567 ticks محسوبة بتوقيت UTC. أدخل التاريخ والوقت وفرق التوقيت لتحصل على عدد ticks الدقيق في .NET ولحظة UTC التي يمثلها. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
التاريخ والوقت
2024-02-29T12:34:56.1234567+02:30
تحصل على
التاريخ والوقت UTC
2024-02-29T10:04:56.1234567Z
ticks في .NET
638447978961234567
وحدة ticks
100 nanoseconds

حوّل تاريخا ووقتا كاملين بصيغة ISO 8601 إلى عدد ticks الدقيق الذي تستخدمه قيم DateTime في . NET. تشترط الأداة محدد UTC أو إزاحة رقمية صريحة، وتتحقق من التاريخ والوقت وفق التقويم الغريغوري، وتحفظ الكسور حتى دقة مئة نانوثانية، وتجري جميع الحسابات بتوقيت UTC.

أدخل تاريخ ISO لا يحتمل الالتباس

أدخل التاريخ والوقت وفق التقويم الغريغوري بالصيغة YYYY-MM-DDTHH:mm:ssZ، أو استبدل Z بإزاحة رقمية مثل +02:30 أو -05:00. الثواني مطلوبة لأن التحويل إلى ticks في . NET يمثل لحظة دقيقة لا تاريخا تقريبيا.

يمكن إضافة رقم واحد إلى 7 أرقام بعد النقطة العشرية. تمثل الأرقام السبعة تماما دقة مئة نانوثانية لكل tick من DateTime؛ وتستكمل الكسور الأقصر بأصفار من اليمين، ولذلك تعني .5 خمسة أعشار الثانية لا 5 ticks. يجب تحديد المنطقة الزمنية.

يمنع هذا الشرط النص نفسه من إنتاج نتائج مختلفة على أجهزة مضبوطة على مناطق محلية متباينة. ترفض الأداة التواريخ المستحيلة والثواني الكبيسة والساعة 24 والإزاحات الخارجة عن نطاق ISO واللحظات التي تقع، بعد توحيدها إلى UTC، خارج السنوات من 0001 إلى 9999. يجعل عقد الإدخال الصارم هذا النتيجة ملائمة لعمليات الترحيل وبيانات الاختبار وفحوص قواعد البيانات وتشخيص البروتوكولات، حيث يكون افتراض المنطقة الزمنية ضمنيا مكلفا.

استخدم Z الكبيرة والفاصل الحرفي T لتمثيل اللحظة المقصودة بصورة موجزة وقابلة للتدقيق.

تعرّف على كيفية حساب قيمة ticks

تمثل tick واحدة من DateTime في . NET فترة مقدارها مئة نانوثانية منذ 0001-01-01T00:00:00 في التقويم الغريغوري الاستباقي. يتحقق الحساب أولا من السنة والشهر واليوم والساعة والدقيقة والثانية.

ثم يحصي الأيام الكاملة السابقة للسنة المدخلة، مع تطبيق قواعد السنوات الكبيسة الغريغورية، ويضيف الأيام الكاملة من السنة الحالية، ويحوّل وقت اليوم إلى ثوان. تطرح الإزاحة الرقمية المذكورة للحصول على UTC قبل تكوين عدد ticks. وأخيرا تضرب الثواني في عشرة ملايين ويضاف المكون الكسري المؤلف من 7 أرقام.

لا تشارك ساعة النظام ولا منطقة المضيف الزمنية ولا أي شبكة أو قيمة عشوائية أو محلل Date المدمج. لذلك تظل النتيجة متطابقة في worker على الخادم وفي متصفح بأي منطقة زمنية. ولأن معظم قيم ticks المفيدة في .

تحقق من التكاملات باستخدام نتيجة UTC الموحّدة

يقدم حقل UTC الموحّد دليلا مفيدا: قبل اعتماد العدد الصحيح، يمكنك التأكد من أن الإزاحة المدخلة نقلت الساعة، وعند الحاجة تاريخ التقويم، في الاتجاه المتوقع. في C#، تطابق القيمة الرقمية ticks لوقت الساعة UTC الموحّد، مع بداية الحقبة في السنة الأولى؛ ولا تشمل رايات النوع الثنائية في DateTime. ضع هذا الفرق في الحسبان عند فحص قيم DateTime.ToBinary أو أعراف تخزين DateTimeOffset أو الحقب الخاصة بالتطبيقات.

في اختبارات الانحدار الآلية، احفظ نص UTC المعياري وسلسلة ticks معا. يسهّل الزوج التشخيص: يشير حقل UTC الخاطئ إلى معالجة الإزاحة، بينما يشير تطابق UTC مع اختلاف العدد الصحيح إلى الحقبة أو الدقة أو التقريب العددي.

فحص سجلات زمنية قديمة

حوّل لحظة ISO معروفة قبل مقارنتها بقيم ticks المخزنة في السجلات أو الصادرات أو جداول التطبيقات القديمة.

تشخيص أخطاء الإزاحة والدقة

راجع تاريخ UTC المعياري بجانب عدد ticks للتمييز بين أخطاء المنطقة الزمنية ومشكلات كسور الثانية أو تقريب الأعداد الصحيحة.

ماذا تمثل tick واحدة في .NET؟

تمثل tick واحدة مئة نانوثانية. وتوجد عشرة ملايين ticks في الثانية الواحدة.

هل يجب تحديد منطقة زمنية؟

نعم. استخدم Z أو إزاحة مثل +01:00. التواريخ بلا منطقة زمنية ملتبسة، ولذلك ترفض بدلا من تفسيرها وفق إعداد المضيف.

هل تدعم الأداة 7 أرقام كسرية؟

نعم. تقبل الأداة من رقم كسري واحد إلى 7 أرقام، وتستكمل الكسور الأقصر حتى دقة DateTime ذات 7 أرقام.

هل تشمل النتيجة رايات نوع DateTime؟

لا. تعيد عدد ticks بتوقيت UTC منذ السنة الأولى، لا الرايات الإضافية في تمثيلات مثل DateTime.ToBinary.

ما نطاق التواريخ التي يمكنني تحويلها؟

أي لحظة يقع وقتها بتوقيت UTC بين السنتين 0001 و9999. وتُرفض التواريخ المستحيلة والثواني الكبيسة والساعة 24، وكذلك فروق التوقيت الخارجة عن النطاق المعتاد.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/date/date-to-dotnet-ticks

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/date/date-to-dotnet-ticks \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"datetime":"2024-02-29T12:34:56.1234567+02:30"}'
{
  "datetime": "2024-02-29T12:34:56.1234567+02:30"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.date_to_dotnet_ticks",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

تعاد النتيجة كسلسلة عشرية كي تظل حتى القيم الكبيرة جدا دقيقة في JavaScript وJSON وجداول البيانات وأدوات سطر الأوامر واختبارات التكامل بين اللغات.

تعرّف على كيفية حساب قيمة ticks

NET تتجاوز حد الأعداد الصحيحة الدقيقة في JavaScript، تعاد dotnet_ticks عمدا كسلسلة عشرية. تعامل معها كعدد صحيح في اللغات التي تدعم أعداد 64 بت، أو احتفظ بها كنص عند تمريرها عبر أنظمة JSON التي قد تقرّب الأعداد الكبيرة.

تحقق من التكاملات باستخدام نتيجة UTC الموحّدة

تتضمن الاستجابة قيمة datetime الأصلية، وقيمة utc_datetime معيارية تحتوي بالضبط على 7 أرقام كسرية، وسلسلة dotnet_ticks الدقيقة، ووصفا واضحا لوحدة tick. يفيد ذلك خصوصا عند مقارنة حمولة API بسجلات C# أو صادرات SQL أو بيانات القياس عن بعد أو الملفات القديمة التي سُلسلت طوابعها الزمنية على هيئة ticks.

إعداد بيانات اختبار بين اللغات

أنشئ سلاسل ticks متوقعة ودقيقة لاختبارات تكامل JavaScript وC# وقواعد البيانات وAPI دون الاعتماد على المنطقة الزمنية للجهاز.

لماذا تعاد dotnet_ticks كسلسلة؟

تتجاوز معظم قيم DateTime نطاق الأعداد الصحيحة الآمنة في JavaScript. تحفظ السلسلة العشرية كل رقم عبر JSON وفي المتصفح.

ما تكلفة طلب API؟

تبلغ تكلفة كل طلب API قيمة $0.002. يستخدم إصدار المتصفح منطق التحويل الحتمي نفسه.

اطّلع على توثيق KIT الكامل ←