ตัวอย่างนี้แสดงวิธีสร้างการประทับเวลาวันที่ด้วย Tcl คุณสามารถใช้การประทับเวลาวันที่ในโฟลว์การออกแบบสคริปต์เพื่อบันทึกว่าสคริปต์ทํางานเมื่อใด การเขียนการประทับเวลาวันที่ลงในไฟล์การออกแบบของคุณจะให้พื้นที่จัดเก็บข้อมูลบนชิปเมื่อการออกแบบถูกคอมไพล์
คุณสามารถใช้คําสั่ง Tcl เพื่อสร้างสตริงวันที่ที่จัดรูปแบบแบบกําหนดเองที่มีเพียงองค์ประกอบวันที่และเวลาที่คุณต้องการ ใช้ วินาทีนาฬิกา คําสั่ง Tcl เพื่อคืนค่ารูปแบบเวลาและ นาฬิกา ปัจจุบันเพื่อสร้างสตริงวันที่ที่จัดรูปแบบแบบกําหนดเอง ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดรูปแบบสตริงเวลาวันที่ได้ที่ หน้าเว็บ การจัดรูปแบบ วันที่และเวลา ซึ่งประกอบด้วยตัวอย่างและตารางการจัดรูปแบบคําสําคัญ
ต่อไปนี้เป็นตัวอย่างสองตัวอย่างของตัวเลือกการจัดรูปแบบที่แตกต่างกันสําหรับสตริงวันที่เวลา
ตัวอย่างที่ 1
คําสั่งต่อไปนี้จะสร้างสตริงวันที่วันที่ที่จัดรูปแบบด้วยองค์ประกอบต่อไปนี้ตามลําดับ:
- ปีหลักสี่หลัก
- เดือนสองหลัก (01-12)
- วันสองหลัก (01-31)
- ชั่วโมงสองหลักในรูปแบบ 24 ชั่วโมง (00-23)
- นาทีสองหลัก (00-59)
- ตัวเลขสองหลัก (00-59)
รูปแบบนาฬิกา [วินาทีนาฬิกา] -format {%Y %m %d %H %M %S}
คําสั่งดังกล่าวจะสร้างสตริงดังนี้:
2005 01 10 15 16 55
ตัวอย่างที่ 2
ตัวอย่างที่สองสร้างสตริงวันที่ที่จัดรูปแบบด้วยองค์ประกอบต่อไปนี้ตามลําดับ:
- ชื่อเดือนย่อตามด้วยเครื่องหมายมหัพภาค
- วันที่สองหลักในเดือนตามด้วยเครื่องหมายจุลภาค
- ปีหลักสี่หลัก
- เวลาในรูปแบบ HH:MM:SS
- ตัวระบุ AM/PM
รูปแบบนาฬิกา [นาฬิกาวินาที] -รูปแบบ {%b. %d, %Y %I:%M:%S %p}
คําสั่งดังกล่าวจะสร้างสตริงดังนี้:
10 มกราคม 2005 03:31:20 PM
การแปลงสตริงวันที่เวลา
โดยปกติคุณจะต้องแปลงสตริงเวลาวันที่ ASCII เป็นรูปแบบอื่น (เช่น เลขฐานสิบหกหรือเลขฐานสอง) เพื่อจัดเก็บไว้ในธนาคารจดทะเบียนหรือหน่วยความจํา นี่เป็นตัวอย่างการแปลงรูปแบบสองตัวอย่าง
ความคล่องตัวต่อเลขฐานสิบหก
ถ้าคุณใช้องค์ประกอบวันที่ที่สร้างเฉพาะค่าตัวเลขเท่านั้น คุณสามารถปฏิบัติต่อองค์ประกอบเหล่านี้เป็นหมายเลขตามที่กําหนดเพื่อวัตถุประสงค์ในการแปลง คําสั่งต่อไปนี้จะสร้างตราประทับวันที่ของหมายเลขวันในปี (001 - 366) ตามด้วยชั่วโมงในรูปแบบ 24 ชั่วโมง ตามด้วยนาที
ตั้งค่า Str [รูปแบบนาฬิกา [วินาทีนาฬิกา] -format {%j%H%M}] ตั้งค่า [format "%X" $str]
คําสั่งดังกล่าวจะสร้างสตริงเช่นนี้ในตัวแปร:
17D40F
ASCII ไปยัง ฐานสิบหก
คําสั่งต่อไปนี้จะสร้างสตริงวันที่และแปลงเป็นสตริงเลขฐานสิบหกที่บรรจุไว้ใน Variable Out ตัวเลขฐานสิบหกแต่ละตัวเป็นรหัสฐานสิบหกของอักขระ ASCII
ตั้ง Str [รูปแบบนาฬิกา [วินาทีนาฬิกา] -format {%b. %d, %Y %I:%M:%S %p}] การสแกนไบนารี$str "H*"
คําสั่งดังกล่าวจะสร้างสตริงเช่นนี้ในตัวแปร:
4a616e2e2031302c20323030352030333a3363a303520504d