การคำนวณวันที่ในอนาคตหรืออดีต

Rust:
การคำนวณวันที่ในอนาคตหรืออดีต

วิธีการ:

Rust มี chrono crate สำหรับทุกความต้องการเกี่ยวกับวันที่และเวลา นี่คือวิธีการเพิ่มหรือลบวันที่:

use chrono::{DateTime, Duration, Utc};

fn main() {
    let now = Utc::now();
    println!("เวลา UTC ปัจจุบัน: {}", now);

    let two_weeks = Duration::weeks(2);
    let future_date = now + two_weeks;
    println!("UTC ในสองสัปดาห์: {}", future_date);

    let thirty_days_ago = Duration::days(-30);
    let past_date = now + thirty_days_ago;
    println!("UTC 30 วันที่แล้ว: {}", past_date);
}

ตัวอย่างผลลัพธ์:

เวลา UTC ปัจจุบัน: 2023-04-01T12:00:00Z
UTC ในสองสัปดาห์: 2023-04-15T12:00:00Z
UTC 30 วันที่แล้ว: 2023-03-02T12:00:00Z

ศึกษาเพิ่มเติม

โดยทั่วไปการจัดการวันที่และเวลาเป็นเรื่องที่ยาก ระบบและภาษาโปรแกรมต่างๆ จัดการกับมันในหลายวิธี Rust’s standard library ให้การทำงานพื้นฐาน แต่ chrono crate เป็นตัวเลือกหลัก

มีทางเลือกอื่นหรือไม่? แน่นอนคุณสามารถคำนวณวันที่ด้วยตนเองได้โดยการแปลงทุกอย่างเป็นเวลาสแตมป์ จัดการกับตัวเลขและแปลงกลับ หรือคุณอาจใช้ไลบรารีเฉพาะเวลาในภาษาอื่นๆ — Python มี datetime, JavaScript มี Date เป็นต้น

chrono crate ใน Rust ให้คุณประเภทที่ตระหนักถึงเขตเวลาเช่น DateTime, และช่วงเวลาตามที่เห็นข้างต้น มันจัดการกับสิ่งที่ยุ่งยากเช่นปีอธิกสุรทินและการปรับเวลาฤดูร้อนให้คุณไม่ต้องทำ มันยังทำการแยกวันที่และรูปแบบการแสดงผลวันที่ ทำให้เป็นโซลูชันที่ครอบคลุม

ดูเพิ่มเติม