Rust program to parse the date-time from RFC 3339 string

Rust | Date & Time Example: Write a program to parse the date-time from RFC 3339 string.
Submitted by Nidhi, on November 10, 2021

Problem Solution:

In this program, we will parse date-time from RFC 3339 string using the parse_from_rfc3339() function and print the result.

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 parse date-time from RFC 3339 string is given below. The given program is compiled and executed on UBUNTU 18.04 successfully.

// Rust program to parse the date-time 
// from RFC 3339 string

use chrono::{DateTime, NaiveDate, NaiveDateTime, NaiveTime};
use chrono::format::ParseError;

fn main() -> Result<(), ParseError> {
    let result = DateTime::parse_from_rfc2822("Sat, 30 Oct 2021 11:47:18 +0200")?;
    println!("Result: {}", result);
    Ok(())
}

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`

Result: 2021-10-30 12:45:59 -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 called the DateTime::parse_from_rfc3339() function to parse the RFC 3339 string into date-time and printed the result.

Rust Date and Time Programs »





Comments and Discussions!

Load comments ↻





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