Q:

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

belongs to collection: Rust Date and Time Programs

0

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

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

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.

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

Rust Date and Time Programs

This question belongs to these collections

Similar questions


need a help?


find thousands of online teachers now
Rust program to print the current date-time accord... >>
<< Rust program to convert local date-time in UTC dat...