كيفية تحويل سلسلة إلى تاريخ في جافا؟



ستقدم لك هذه المقالة الطرق التي يمكنك من خلالها تحويل String إلى Date في Java وستعطيك أيضًا عرضًا عمليًا شاملاً.

ستقدم لك هذه المقالة الطرق التي يمكنك من خلالها تحويل سلسلة إلى تاريخ بتنسيق كما يقدم لك عرضًا عمليًا شاملاً. سيتم تغطية المؤشرات التالية في هذه المقالة ،

فلنبدأ إذن ،





كيفية تحويل String إلى Date في Java؟

سوف نتعلم هنا 'كيفية تحويل كائنات السلسلة إلى كائنات التاريخ' باستخدام تغييرات وتقنيات بسيطة في التعليمات البرمجية. أفضل طريقة للتحويل هي
سلسلة حتى تاريخه



SimpleDateFormat.parse (سلسلة)

تاريخ السلسلة

SimpleDateFormat.format (التاريخ)


يعمل الإعراب بطرق مختلفة:

الانتقال إلى هذه المقالة حول تحويل السلسلة إلى تاريخ في Java ،



أخذ التاريخ كنص

إذا كنت تريد الشهر كنص مكون من ثلاثة أحرف ، فنحن بحاجة إلى تحديد 3 'M' والتي يتم أخذها على أنها قيمة الشهر. ثم يتم تفسير قيمة الشهر على أنها نص مثل أكتوبر ، ديسمبر ، يونيو ، إلخ.

للحصول على النتيجة: 12 ديسمبر 1998

هذا هو الكود للتعبير عن قيمة السلسلة في تنسيق التاريخ.

الحزمة com.test.test import java.text.ParseException استيراد java.text.SimpleDateFormat import java.util.Date public class TestDateExample1 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd-MMM- yyyy ') String dateInString = '12 -Dec-1998' جرب {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}

انتاج:
الجمعة 12 ديسمبر 00:00:00 MYT 1998
12 ديسمبر 1998

ما هي فائدة برمجة المقبس

الانتقال إلى هذه المقالة حول تحويل السلسلة إلى تاريخ في Java ،

للحصول على التاريخ بتنسيق '12/12/1988'

package com.test.date import java.text.ParseException استيراد java.text.SimpleDateFormat import java.util.Date public class TestDateExample2 {public static void main (String [] argv) {SimpleDateFormat formatter = new SimpleDateFormat ('dd / MM / yyyy ') String dateInString = '12 / 12/1988' جرب {Date date = formatter.parse (dateInString) System.out.println (date) System.out.println (formatter.format (date))} catch (ParseException e ) {e.printStackTrace ()}}}

يستخدم Java 8 واجهة برمجة تطبيقات Date-Time التي توفر طرق parse () لتحويل قيمة String إلى قيمة Date-Time. بالنسبة لقواعد التحليل الأساسية ، كانت هناك معايير محددة لتمثيل قيمة السلسلة للتاريخ والوقت في أي منهما ISO_LOCAL_TIME أو ISO_LOCAL_DATE شكل. نضع رمز المنسق في كتلة 'try' و 'catch' التي تطرح استثناءً في وقت التشغيل في كل مرة لا يتم فيها استيفاء القاعدة المحددة.
مثال التحليل البسيط هو:

LocalDateTime dateTime = LocalDateTime.parse ('2018-05-05T11: 50: 55')

الانتقال إلى هذه المقالة حول تحويل السلسلة إلى تاريخ في Java ،

لتغيير المنطقة الزمنية

للقيام بذلك ، نحتاج إلى تحديد طرق تحليل المنطقة الزمنية المعروفة باسم 'ZonedDateTime' لتغيير قيمة السلسلة مباشرة إلى تنسيق التاريخ والوقت. كل ما عليك فعله هو تحديد المنطقة الزمنية التي تريد التاريخ والوقت فيها. على سبيل المثال ، نحتاج هنا إلى التاريخ والوقت في المنطقة الأوروبية. لذلك ، نحدد منطقة tiemzone بأنها Europe / Paris باستخدام طريقة 'ZonedDateTime' ::

ZonedDateTime zonedDateTime = ZonedDateTime.parse ('2015-05-05T10: 15: 30 + 01: 00 [أوروبا / باريس]')

الآن ، لنأخذ البساطة Date Time API الذي يحول قيمة السلسلة إلى قيمة التاريخ باستخدام SimpleDateFormat:

  1. قدم Java ملف تاريخ الوقت استدعاء API بإصداره 8 لتمثيل معلمات التاريخ والوقت المعروفة باسم 'java.time'. كانت المكالمة القديمة في جميع الإصدارات السابقة لتمثيل التاريخ java.util.date.

دعونا نرى كيفية تحويل سلسلة بالفعل إلى نوع بيانات التاريخ والوقت المحلي:

تحليل استدعاء API:

إذا كانت قيمة السلسلة التي نحتاج إلى تحويلها إلى التاريخ والوقت type هو تنسيق ISO-801 ، ثم يمكننا ببساطة استدعاء فئتي DateFormat و SimpleDateFormat باستخدام طرق parse ().

مثال على ذلك:

import java.text.SimpleDateFormat import java.util.Date public class StringToDateExample1 {public static void main (String [] args) يطرح استثناء {String sDate1 = '31 / 12/1998 'Date1 = new SimpleDateFormat (' dd / MM / yyyy '). parse (sDate1) System.out.println (sDate1 +' t '+ date1)}}

انتاج:
12/31/1998 الخميس 31 ديسمبر 00:00:00 IS 1998

import java.text.SimpleDateFormat import java.util.Date public class StringToDateExample2 {public static void main (String [] args) يطرح استثناء {String sDate1 = '12 / 10/1988 'String sDate2 = '12 -Oct-1988' String sDate3 = '12 10 ، 1988 'String sDate4 =' الأربعاء ، 12 أكتوبر 1988 'String sDate5 =' الأربعاء ، 12 أكتوبر 1988 23:37:50 'String sDate6 = '31 -Dec-1998 23:37:50' تنسيق SimpleDateFormat1 = تنسيق SimpleDateFormat جديد ('dd / MM / yyyy') تنسيق SimpleDateFormat 2 = تنسيق SimpleDateFormat جديد ('dd-MMM-yyyy') تنسيق SimpleDateFormat 3 = تنسيق SimpleDateFormat الجديد ('MM dd، yyyy') تنسيق SimpleDateFormat 4 = نموذج SimpleDateF جديد yyyy ') تنسيق SimpleDateFormat5 = تنسيق SimpleDateFormat جديد (' E، MMM dd yyyy HH: mm: ss ') تنسيق SimpleDateFormat 6 = تنسيق SimpleDateFormat جديد (' dd-MMM-yyyy HH: mm: ss ') Date1 = formatter1.parse (sDate1) Date date2 = formatter2.parse (sDate2) Date date3 = formatter3.parse (sDate3) Date4 = formatter4.parse (sDate4) Date date5 = formatter5.parse (sDate5) Date6 = formatter6.parse (sDate6) System.out.println (سدات e1 + 't' + date1) System.out.println (sDate2 + 't' + date2) System.out.println (sDate3 + 't' + date3) System.out.println (sDate4 + 't' + date4) System.out. println (sDate5 + 't' + date5) System.out.println (sDate6 + 't' + date6)}}

باستخدام الكود أعلاه ، تحصل بالفعل على النتائج بجميع التنسيقات المذكورة. لذلك ، حددنا تنسيقات التاريخ المختلفة في قيمة سلسلة ثم قمنا بتحليلها من خلال تحديد فئة SimpleDateFormat. بمجرد الانتهاء من ذلك ، يولد الإخراج في جميع تنسيقات التاريخ والوقت المذكورة.

12/31/1998 الخميس 31 ديسمبر 00:00:00 IS 1998

31 ديسمبر 1998 الخميس 31 ديسمبر 00:00:00 IS 1998

12 31 ، 1998 الخميس 31 ديسمبر 00:00:00 IS 1998

الخميس 31 ديسمبر 1998 الخميس 31 ديسمبر 00:00:00 IS 1998

الخميس ، 31 ديسمبر 1998 23:37:50 الخميس 31 ديسمبر 23:37:50 IS 1998

31 ديسمبر 1998 23:37:50 الخميس 31 ديسمبر 23:37:50 IS 1998

لمعرفة المزيد حول تنسيق التاريخ ، اقرأ المستند الجافادوك . بعض التنسيقات الصالحة String to Date مذكورة هنا:
y = year (yy or yyyy)

م = شهر (مم)

د = يوم في الشهر (يوم)

ح = ساعة (0-12) (ساعة)

كيفية استخدام اناكوندا للبايثون

H = ساعة (0-23) (HH)

م = دقيقة بالساعة (مم)

ق = ثواني (ث)

S = مللي ثانية (SSS)

z = نص المنطقة الزمنية (مثل توقيت المحيط الهادي ...)

Z = المنطقة الزمنية ، إزاحة الوقت (على سبيل المثال -0800)

ملحوظة: تحديد 'Java.util.date' كتاريخ = تاريخ جديد () تم إهماله. لذلك ، استخدم دائمًا تنسيق SimpleDateFormat مع سلسلة إدخال مطابقة التي تحتاج إلى تحويلها.

وهكذا وصلنا إلى نهاية هذه المقالة حول 'كيفية تحويل سلسلة إلى تاريخ في جافا؟'. إذا كنت ترغب في معرفة المزيد ،تفحص ال بواسطة Edureka ، شركة تعليمية موثوقة عبر الإنترنت. تم تصميم دورة تدريب وإصدار شهادات Java J2EE و SOA من Edureka لتدريبك على مفاهيم Java الأساسية والمتقدمة جنبًا إلى جنب مع العديد من أطر Java مثل Hibernate & Spring.

لديك سؤال لنا؟ يرجى ذكرها في قسم التعليقات بهذه المقالة وسنعاود الاتصال بك في أقرب وقت ممكن.