سؤال

هل من الممكن تضمين حرف أبجدي في سلسلة نمط SimpleDateFormat؟

أحاول إنشاء سلسلة تنسيق حيث يتم تضمين الحرف "T" قبل وقت المثال:

2003-11-15ب09:30:47-05:00.

أنا حاليا باستخدام yyyy-MM-ddhh:mm:ssZ كما سلسلة نمط.

إذا قمت بتغيير ذلك إلى yyyy-MM-ddThh:mm:ssZ سوف يرمي استثناء بأنه "A" إلى "z" و "a" إلى 'z' محفوظة.

هل هناك أي حل لا ينطوي على استخدام اثنين من dateformats؟

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

المحلول

المحيطة T مع اقتباسات واحدة يجب أن تعمل:

yyyy-MM-dd'T'hh:mm:ssZ

نقلا عن ذلك وثائق (التركيز لي):

يتم تحديد تنسيقات التاريخ والوقت حسب التاريخ وسلاسل نمط الوقت. في غضون التاريخ وحتى الأوتار النمطية، الحروف غير المسبقة من 'A' ل 'Z' و من 'a' ل 'z' يتم تفسيرها كحرف نمط تمثل مكونات موعد أو سلسلة أو زمنية. يمكن نقل النص باستخدام علامات اقتباس واحدة (') لتجنب التفسير. "''" يمثل اقتباس واحد. لا يتم تفسير جميع الشخصيات الأخرى؛ يتم نسخها ببساطة إلى سلسلة الإخراج أثناء التنسيق أو المتطابقات مقابل سلسلة الإدخال أثناء التحليل.

يتم تضمين حالة الاستخدام المحددة الخاصة بك كمثال:

Date and Time Pattern            Result
-------------------------------------------------------------
"yyyy-MM-dd'T'HH:mm:ss.SSSZ"     2001-07-04T12:08:56.235-0700  
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top