ماذا يعني اقتباس واحد داخل تنسيق وقت تاريخ C#؟




.net datetime (2)

لدينا على سبيل المثال هذا الثابت في C #:

System.Globalization.DateTimeFormatInfo.InvariantInfo.SortableDateTimePattern

لها هذه القيمة:

"yyyy'-'MM'-'dd'T'HH':'mm':'ss"

أنا استخدامها في وظيفة ParseExact ثم yyyy-MM-ddTHH:mm:ss يعمل كذلك.

لا استطيع معرفة ما يقتبس واحد ل.


إنه محدد سلسلة حرفية .

يتم تفسير أي شيء بين علامات الاقتباس المفردة كحرف حرفي ، ولن يتم تفسيره كسلسلة تنسيق مخصصة.

وهي مكافئة للهروب باستخدام شرطة مائلة للخلف: dd'T'HH هي نفس dd\THH .

في السلسلة الخاصة بك yyyy'-'MM'-'dd'T'HH':'mm':'ss ، الاقتباسات غير ضرورية حول - و T ، حيث أن هذه ليست سلاسل تنسيق مخصصة ، وبالتالي سيتم دائمًا تفسيرها على أنها حرفية السلسلة. ومع ذلك : هو محدد التنسيق ، الذي يتم تقييمه إلى فاصل زمني مناسب للثقافة الحالية. إن اقتباسها كـ ':' يعني أن الحرف الحرفي : سيتم استخدامه دائمًا ، بغض النظر عن الثقافة الحالية.


من المفيد معرفة أن هذا هو نفس التنسيق الذي تستخدمه وظيفة Windows GetDateFormat . يمكنك استخدام علامة اقتباس أحادية للإشارة إلى بعض الحرفي الذي تريد إدراجه في السلسلة الناتجة.

يمكن الاطلاع على مزيد من الوثائق الخاصة برموز تنسيق السلسلة على:

في السلسلة الخاصة بك ، من الواضح أنه يريد حرفياً إضافة الواصلات ، والنقوش ، والأحرف T :

yyyy '-' MM '-' dd 'T' HH ':' mm ':' ss

بشكل عام ، لا ترغب في إنشاء التواريخ / الأوقات باستخدام حرفًا الواصلات ( - ) أو نقطتين (:) ، أو حتى الشرطة المائلة ( / ). لأن هؤلاء مخطئون بالنسبة للثقافات التي لا تستخدم الخطوط المائلة والأقواس لبناء التواريخ / الأوقات:

  • 10/22/2019 10-19-1954 ᴀᴍ
        1. 10:19:54
  • 2019.10.22 10:19:54
  • 2019-10-22 10.19.54
  • 2019-10-22 10:19:54
  • 2019-10-22 10:19:54 AM
  • 2019-10-22 ཆུ་ཚོད་ 10:19:54 སྔ་ ཆ་
  • 2019-10-22 오전 10:19:54
      1. 2019 10:19:54
        1. 10:19:54
  • 22.10.19 10:19:54
  • 22.10.19 ý. 10:19:54
  • 22.10.2019 10.19.54
  • 22.10.2019 10:19:54
  • 22.10.2019 10:19:54
  • 22.10.2019 г. 10:19:54
  • 2019/10/22. 10:19:54
  • 22-10-19 10.19.54
  • 22-10-19 10.19.54
  • 22-10-19 10:19:54
  • 22-10-19 ਸਵੇਰ 10:19:54
  • 22-10-2019 10:19:54
  • 22-10-2019 ৰাতিপু 10:19:54
  • 22-окт. 19 10:19:54
  • 23/02/41 10:19:54 ص
  • 30/07/1398 10:19:54 ق.ظ

ما تريد القيام به ، إذا كنت تريد الإشارة:

  • "هنا يجب أن تضع الفاصل الزمني"
  • "هنا هو المكان الذي يجب أن تضع فيه الفاصل الزمني"

هل استخدام خاص:

  • حرف استبدال فاصل التاريخ (/)
  • حرف استبدال فاصل الوقت (:)

وبناء شكل مثل:

dd / yyyy / MM ss: HH: mm

لا أعرف ما الذي يحتاجه المرء عنده لعرض تاريخ على النحو التالي:

  • 22/2019/10 37:10:24
  • 22-2019-10 37∶10∶24
  • 22 // 2019 // 10 37 :: 10 :: 24
      1. 10 37-10-10

ولكن بهذه الطريقة ، يقوم المترجم بإدراج فواصل التاريخ والوقت الصحيحة للثقافة.

بينما إذا طلبت حرفيًا / أو - أو::

  • dd '/' yyyy '/' MM ss ':' HH ':' mm

سوف تحصل حرفيا على:

  • 22/2019/10 37:10:24

بدلا من:

  • 22-2019-10 37∶10∶24






datetime-format