Rust program to print the current date-time according to CHINA time-zone

Rust | Date & Time Example: Write a program to print the current date-time according to CHINA time-zone.
Submitted by Nidhi, on November 09, 2021

Problem Solution:

In this program, we will get the current LOCAL date-time and convert it into UTC Time and then print the current date-time according to the CHINA time-zone.

Add Chrono date-time external library to your project

  1. Create your project using the below command.
    $cargo new datetime -bin
  2. Goto the project folder cd datetime and edit Cargo.toml file.
    $datetime>nano Cargo.toml
  3. Then add dependency in Cargo.toml file
    [dependencies]
    chrono = "0.4"
  4. After that, build your project using the below command
    $datetime>cargo build
  5. Then execute your project after modification in src/main.rs source file.
    $datetime>cargo run

Program/Source Code:

The source code to print the current date-time according to CHINA time-zone is given below. The given program is compiled and executed on UBUNTU 18.04 successfully.

// Rust program to print the current date-time 
// according to CHINA time-zone

use chrono::{DateTime, FixedOffset, Local, Utc};

fn main() {
    let localTime = Local::now();
    let utcTime = DateTime::<Utc>::from_utc(localTime.naive_utc(), Utc);
    
    let chinaTimezone = FixedOffset::east(8 * 3600);
    
    println!("Local time: {}", localTime);
    println!("UTC time: {}", utcTime);
    
    println!("Current time in CHINA: {}",utcTime.with_timezone(&chinaTimezone));
}

Output:

$datetime> cargo run
   Compiling datetime v0.1.0 (/home/arvind/Desktop/rust/datetime)
    Finished dev [unoptimized + debuginfo] target(s) in 0.29s
     Running `target/debug/datetime`

Local time: 2021-10-30 09:05:27.793412856 -07:00
UTC time: 2021-10-30 16:05:27.793412856 UTC
Current time in CHINA: 2021-10-31 00:05:27.793412856 +08:00

Explanation:

In the above program, we imported the "Chrono" library to our project for performing date and time operations. We imported the Chrono library using the below line:

use chrono::Utc;

In the main() function, we got the current LOCAL date-time using the Local::now() method and converted it into UTC date-time using the from_utc() method. Then we converted the UTC time according to the CHINA time-zone and printed the result.

Rust Date and Time Programs »





Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.