1. تعريف الطابع الزمني
يشير Timestamp إلى وقت إنشاء وتعديل وصول في سمات الملفات.
تقنية Timestamp الرقمية هي تطبيق لمتغير تقنية التوقيع الرقمي. في وثائق معاملات التجارة الإلكترونية ، يعد الوقت معلومات مهمة للغاية. في العقود المكتوبة ، يكون تاريخ توقيع المستند لا يقل أهمية عن توقيع المستند لمنع الوثيقة من مزورة ومعبأة. خدمة الطوابع الزمنية الرقمية (DTS: Digital Time Stamp Service) هي واحدة من مشاريع خدمات أمان التجارة الإلكترونية عبر الإنترنت ، والتي يمكن أن توفر حماية للأمن لمعلومات التاريخ والوقت للملفات الإلكترونية.
طاق الوقت هو وثيقة اعتماد مشفرة تتكون من ثلاثة أجزاء:
بشكل عام ، فإن عملية إنشاء الطوابع الزمنية هي: يقوم المستخدم أولاً بتشفير الملف الذي يحتاج إلى تمرير الطابع الزمني في هضم مع ترميز التجزئة ، ثم يرسل Digest إلى DTS. بعد إضافة معلومات التاريخ والوقت الخاص بـ File Digest المستلم ، تقوم DTS بتشفير الملف (التوقيع الرقمي) ، ثم يرسله إلى المستخدم.
يتم كتابة وقت التوقيع على المستند كتابيًا من قبل الموقت نفسه ، في حين أن الطابع الزمني للرقم ليس هو الحال. تتم إضافتها بواسطة وحدة التصديق DTS وتستند إلى الوقت الذي يتم فيه استلام المستند بواسطة DTS.
2. تحويل الطابع الزمني حتى الآن (أو سلسلة)
// تحويل الطوابع الزمنية إلى اللدغة أو Date SimpleDateFormat format = newsimpledateFormat ("YyyyM-MM-DD HH: MM: SS") ؛ وقت طويل = newlong (445555555) ؛ سلسلة d = format.format (الوقت) ؛ تاريخ التاريخ = التنسيق. parse (d) ؛ System.out.println ("تنسيق إلى السلسلة (التاريخ):"+D) ؛ System.out.println ("التنسيق حتى الآن:"+D) ؛ نتيجة التشغيل: تنسيق إلى السلسلة (التاريخ): 1970-01-06 11: 45: 55Format حتى الآن: الثلاثاء 06 يناير 11:45:55 CST 1970 3. يتم تحويل التاريخ (أو السلسلة) إلى طابع زمني
// يتم تحويل التاريخ أو السلسلة إلى تنسيق SimpledAteFormat timestamp = newsimpledateFormat ("YyyyM-MM-DD HH: MM: SS") ؛ string time = "1970-01-06 11:45:55" ؛ تاريخ التاريخ = التنسيق. parse (الوقت) ؛ system.out.print ("التنسيق إلى الأوقات:"+date.getTime ()) ؛ نتائج التشغيل:
تنسيق للأوقات: 445555000
4. انتبه
عند تحديد simpledateformat ، newsimpledateFormat ("Yyyy-MM-DD HH: MM: SS") ؛ لا يمكن أن يكون هناك مسافات في بداية ونهاية السلسلة. إذا كانت هناك مسافات ، فيجب أن تحتوي المساحات الزمنية المقابلة أثناء التحويل أيضًا على مساحات (يتوافق الاثنان) ، مثل:
// يتم تحويل التاريخ أو السلسلة إلى تنسيق SimpledAteFormat timestamp = newsimpledateFormat ("YyyyM-MM-DD HH: MM: SS") ؛ string time = "1970-01-06 11:45:55" ؛ تاريخ التاريخ = التنسيق. parse (الوقت) ؛ system.out.print ("التنسيق إلى الأوقات:"+date.getTime ()) ؛ النتيجة تشغيل (خطأ):
استثناء في الموضوع "الرئيسي" java.text.parseexception: التاريخ غير القابل للشفاء: "1970-01-06 11:45:55"
صحيح:
// يتم تحويل التاريخ أو السلسلة إلى تنسيق SimpledAteFormat timestamp = newsimpledateFormat ("YyyyM-MM-DD HH: MM: SS") ؛ String Time = "1970-01-06 11:45:55" ؛ // ملاحظة: بعد التصحيح ، تتم إضافة المساحات هنا. تاريخ التاريخ = التنسيق. parse (الوقت) ؛ system.out.print ("التنسيق إلى الأوقات:"+date.getTime ()) ؛ النتيجة الجارية: تنسيق للأوقات: 445555000 1. GetTime () في فئة التاريخ في Java يحصل على الطابع الزمني. يعد الطابع الزمني الناتج في Java دقيقًا إلى مستوى المللي ثانية ، بينما في UNIX دقيق إلى المستوى الثاني ، لذلك يجب تقسيم الطابع الزمني المتولد من خلال Java على 1000.
2. ما يلي هو رمز جافا
استيراد java.text.parseException ؛ استيراد java.text.simpledateformat ؛ استيراد java.util.date ؛ الفئة العامة baidu {/** * param args */public static void main (string [] args) {try {string time = "2011/07/29 14:50:11" ؛ تاريخ التاريخ = جديد simpletformat ("yyyy/mm/dd hh: mm: ss"). parse (time) ؛ long unixtimestamp = date.getTime ()/1000 ؛ system.out.println (unixtimestamp) ؛ } catch (parseException e) {E.PrintStackTrace () ؛ }}}ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.