#unix #timestamp #epoch

bin+lib uts2ts

Convert a unix timestamp (seconds) to a struct {year, month, day, hour, minute, second, weekday}

7 unstable releases (3 breaking)

0.4.1 Aug 5, 2023
0.4.0 Aug 2, 2023
0.3.0 Jul 29, 2023
0.2.2 Jul 27, 2023
0.1.0 Jul 25, 2023

#198 in Date and time

Download history 141/week @ 2023-11-02 92/week @ 2023-11-09 79/week @ 2023-11-16 176/week @ 2023-11-23 172/week @ 2023-11-30 295/week @ 2023-12-07 156/week @ 2023-12-14 179/week @ 2023-12-21 70/week @ 2023-12-28 123/week @ 2024-01-04 34/week @ 2024-01-11 96/week @ 2024-01-18 135/week @ 2024-01-25 95/week @ 2024-02-01 84/week @ 2024-02-08 130/week @ 2024-02-15

479 downloads per month
Used in rustypaste

MIT license

15KB
225 lines

uts2ts

Continuous Integration Continuous Deployment GitHub Tag Crate Release Documentation

uts2ts is a simple function that does only one thing:

It converts a unix timestamp to something slightly more useful. ;-)

So why then? Well, it's not always warranted to pull in a myriad of dependencies when you need this one, little thingy.

For complex time and date calculations and manipulations, please refer to the more functional complete crates chrono and time.

Please note that the as_string() method is just a quick way of generating a human readable date/time string that

  • is unambiguous and close to ISO 8601 (or RFC 3339)
  • can be used as an example how to write your own formatting function
  • is NOT an attempt to reinvent all the goodies other crates provide

Examples

use uts2ts::uts2ts;

fn main() {
    let ts = uts2ts(204158100);

    // Timestamp { year: 1976, month: 6, day: 20, hour: 22, minute: 35, second: 0, weekday: 0 }
    println!("{:?}", ts);

    // 1976-06-20 22:35:00
    println!("{}", ts.as_string());

    // 1976-06-20 22:35:00 +0000
    println!("{}", ts.as_string_utc());
}

No runtime deps