"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تحليل سلسلة تاريخ إلى كائن DateTime باستخدام Joda Time وتجنب الخطأ \"تنسيق غير صالح\"؟

كيفية تحليل سلسلة تاريخ إلى كائن DateTime باستخدام Joda Time وتجنب الخطأ \"تنسيق غير صالح\"؟

تم النشر بتاريخ 2024-11-08
تصفح:815

How to Parse a Date String into a DateTime Object with Joda Time and Avoid the \

تحليل سلسلة التاريخ إلى كائن DateTime باستخدام Joda Time

عند العمل مع بيانات التاريخ والوقت، غالبًا ما يكون من الضروري تحويل تاريخ مخزنة كسلسلة في كائن منظم لمزيد من المعالجة. توفر مكتبة Joda Time مجموعة شاملة من الأدوات للتعامل مع عمليات التاريخ والوقت في Java.

إحدى المهام الشائعة هي تحويل سلسلة التاريخ إلى كائن DateTime. ومع ذلك، قد يواجه المستخدمون خطأً إذا لم تكن السلسلة بالتنسيق المتوقع. دعونا نتناول هذه المشكلة بمثال محدد.

خطأ: "تنسيق غير صالح"

ضع في اعتبارك الكود التالي:

DateTime dt = new DateTime("04/02/2011 20:27:05");

يهدف هذا الرمز إلى إنشاء كائن DateTime من سلسلة. ومع ذلك، فشل مع ظهور الخطأ، "التنسيق غير صالح: "04/02/2011 14:42:17" غير صحيح في "/02/2011 14:42:17"".

الحل : استخدام DateTimeFormat

لحل المشكلة، نحتاج إلى تحديد التنسيق المتوقع لسلسلة التاريخ. يوفر Joda Time فئة DateTimeFormatter لهذا الغرض. إليك الكود المصحح:

DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/yyyy HH:mm:ss");
DateTime dt = formatter.parseDateTime("04/02/2011 20:27:05");

من خلال تحديد سلسلة التنسيق، نقوم بإرشاد Joda Time حول كيفية تفسير مكونات التاريخ في سلسلة الإدخال. في هذا المثال، يشير نمط التنسيق إلى أنه يجب تحليل السلسلة كيوم (dd)، شهر (MM)، سنة (yyyy)، ساعة (HH)، دقيقة (mm)، وثواني (ss).

بمجرد تعريف المنسق، يمكننا استخدامه لتحليل السلسلة وإنشاء كائن DateTime. سيكون لكائن dt الناتج مكونات التاريخ والوقت المحددة.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3