1. السلسلة والتاريخ (java.util.date) يتم نقلها إلى بعضها البعض
1.1 سلسلة -> التاريخ
String datest = "// ::" ؛ تاريخ تاريخ = تاريخ جديد () ؛ // لاحظ أن تنسيق التنسيق يجب أن يتطابق مع تنسيق سلسلة التاريخ DateFormat SDF = جديد SimplEdateFormat ("Yyyy/Mm/DD HH: MM: SS") ؛ حاول {date = sdf.parse (dateSt) ؛ System.out.println (Date.ToString ()) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } string datest = "2010/05/04 12:34:23" ؛ تاريخ تاريخ = تاريخ جديد () ؛ // لاحظ أن تنسيق التنسيق يجب أن يتطابق مع تنسيق سلسلة التاريخ DateFormat SDF = جديد SimplEdateFormat ("Yyyy/Mm/DD HH: MM: SS") ؛ حاول {date = sdf.parse (dateSt) ؛ System.out.println (Date.ToString ()) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } 1.2 التاريخ -> السلسلة
تحويل التاريخ إلى سلسلة ، يمكنك تعيين أي تنسيق تحويل
String datestr = "" ؛ تاريخ تاريخ = تاريخ جديد () ؛ . DateFormat SDF = جديد SimplEdateFormat ("Yyyy-MM-DD HH/MM/SS") ؛ حاول {datestr = sdf.format (date) ؛ system.out.println (dateSt) ؛ datestr = sdf.format (date) ؛ system.out.println (dateSt) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } string datestr = "" ؛ تاريخ تاريخ = تاريخ جديد () ؛ . DateFormat SDF2 = جديد SimplEdateFormat ("Yyyy-MM-DD HH/MM/SS") ؛ حاول {datestr = sdf.format (date) ؛ system.out.println (dateSt) ؛ datestr = sdf2.format (date) ؛ system.out.println (dateSt) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } 2. يتم نقل السلسلة والطابع الزمني معًا
2.1 سلسلة -> الطابع الزمني
استخدم طريقة Timestamp's ValueOF ()
الطابع الزمني TS = طابع زمني جديد (System.CurrentTimeMillis ()) ؛ سلسلة tsstr = "- ::" ؛ حاول {ts = timestamp.valueof (tsstr) ؛ system.out.println (ts) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } timestamp ts = new timestamp (system.currentTimeMillis ()) ؛ String TSSTR = "2011-05-09 11:49:45" ؛ حاول {ts = timestamp.valueof (tsstr) ؛ system.out.println (ts) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ }ملاحظة: يجب أن يكون نوع السلسلة في شكل: yyyy-mm-dd hh: mm: ss [.f ...] ، مع وجود أقواس تشير إلى اختياري ، وإلا سيتم الإبلاغ عن خطأ! ! !
إذا كانت السلسلة بتنسيق آخر ، فيمكنك التفكير في إعادة تشغيل السلسلة وإعادة تنظيمها ~~
2.2 الطابع الزمني -> سلسلة
استخدم طريقة tostring () من Timestamp أو DateFormat
الطابع الزمني TS = طابع زمني جديد (System.CurrentTimeMillis ()) ؛ سلسلة tsstr = "" ؛ DateFormat SDF = جديد SimplEdateFormat ("Yyyy/Mm/DD HH: MM: SS") ؛ حاول {// الطريقة 1 tsstr = sdf.format (ts) ؛ System.out.println (TSSTR) ؛ // method 2 tsstr = ts.toString () ؛ System.out.println (TSSTR) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } timestamp ts = new timestamp (system.currentTimeMillis ()) ؛ سلسلة tsstr = "" ؛ DateFormat SDF = جديد SimplEdateFormat ("Yyyy/Mm/DD HH: MM: SS") ؛ حاول {// الطريقة 1 tsstr = sdf.format (ts) ؛ System.out.println (TSSTR) ؛ // method 2 tsstr = ts.toString () ؛ System.out.println (TSSTR) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } من السهل أن نرى أن ميزة الطريقة 1 هي أنه يمكنه تعيين شكل سلاسل بمرونة.
3. التاريخ (java.util.date) يتم نقل الطابع الزمني معًا
البيان: بالنظر إلى واجهة برمجة التطبيقات ، يمكننا أن نرى أن التاريخ والجزيرة الزمنية هما علاقات بين الوالدين والطفل
3.1 الطابع الزمني -> التاريخ
الطابع الزمني TS = طابع زمني جديد (System.CurrentTimeMillis ()) ؛ تاريخ تاريخ = تاريخ جديد () ؛ حاول {Date = ts ؛ System.out.println (Date) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } timestamp ts = new timestamp (system.currentTimeMillis ()) ؛ تاريخ تاريخ = تاريخ جديد () ؛ حاول {Date = ts ؛ System.out.println (Date) ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } إنه أمر بسيط للغاية ، ولكن في هذه اللحظة ، يشير الكيان الذي أشار إليه كائن التاريخ هو طابع زمني ، أي أن التاريخ له طريقة فئة التاريخ ، ولكن كيان التنفيذ للطريقة المكتوبة في الطابع الزمني.
3.2 التاريخ -> الطابع الزمني
لا يمكن تحويل فئة الأصل مباشرة إلى فئة الطفل ، يمكنك استخدام السلسلة الوسطى ~~~~
Java.sql.date فقط تخزن بيانات التاريخ ولكن ليس بيانات الوقت // سوف يتم فقد بيانات الوقت المحضر. // إذا كنت ترغب في الحصول على بيانات كاملة ، بما في ذلك التاريخ والوقت ، يمكنك java.util.date d = resultset.getTimestamp (1) ؛ // هذا أكثر ملاءمة لتجنب بعض مشاكل الطابع الزمني المحتملة java.util.date d = new java.util.date (resultset.getTimestamp (1) .getTime ()) ؛
إذا تعوضت عن ذلك بنفسك ، فهذا هو الحال:
عند تخزين قاعدة البيانات ، يمكنك تلقي نوع java.util.date واستخدام طريقة getTime () للحصول على القيمة الطويلة التي تمثل كائن التاريخ ، ثم استخدام هذه القيمة الطويلة لإنشاء كائن طابع زمني لتخزينه في قاعدة البيانات.
عند الجلب من قاعدة بيانات التخزين ، يمكنك أولاً الحصول على الطابع الزمني واستخدام طريقة GetTime () للحصول على القيمة الطويلة ، ثم استخدام هذه القيمة الطويلة لإنشاء كائن java.util.date ، بحيث يمكنك التشغيل في كائن التاريخ هذا. من الأفضل أن نقول SimpleTimeFormat جديد ("Yyyyyy-MM-DD HH: MM: SS"). Format () ، إلخ.