unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: <tomas@tuxteam.de>
To: guile-user@gnu.org
Subject: Re: Help formatting a UTC Timestamp
Date: Tue, 14 Feb 2017 13:48:51 +0100	[thread overview]
Message-ID: <20170214124851.GB14935@tuxteam.de> (raw)
In-Reply-To: <20170214122716.GA2454@debian>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, Feb 14, 2017 at 12:27:16PM +0000, Guy Baumann wrote:
> I am trying to format a timestamp from an api. It is sent in the
>  format "2011-03-24T20:30:47Z"
> 
> what I want to output is something like this
> (strftime "%d %b %g " (localtime (current-time)) )
> 
> However I am unable to work out how to do this, have tried using
>  string->date with results below
> 
> Enter `,help' for help.
> scheme@(guile-user)> (define date "2011-03-24T20:30:47Z")
> scheme@(guile-user)> (use-modules (srfi srfi-19))
> scheme@(guile-user)> (string->date "~Y-m-dT~H:~M:SZ" date)
> srfi/srfi-19.scm:1415:18: In procedure priv:string->date:
> srfi/srfi-19.scm:1415:18: In procedure string->date: TIME-ERROR type bad-date-format-string: "2011-03-24T20:30:47Z"

You got the args reversed: it's first the date string, then the
template. Besides, you forgot a couple of tildes in your template
(e.g. it's "~m" and not just "m" and so on). Lastly, the template
for the zone offset is "~z" (a small z). The "big Z" in your input
string is just a concrete zone (afaik UTC).

This works:

  scheme@(guile-user)> (define mydate "2011-03-24T20:30:47Z")
  scheme@(guile-user)> (string->date mydate "~Y-~m-~dT~H:~M:~S~z")
  $3 = #<date nanosecond: 0 second: 47 minute: 30 hour: 20 day: 24 month: 3 year: 2011 zone-offset: 0>

hth
- -- t
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAlii/LMACgkQBcgs9XrR2kbySACfY3yqQgFw4XWIBZo1Nif8exJ1
jwUAn04XBldYBIWDDhheEjI1nLbFbjhm
=MJ3B
-----END PGP SIGNATURE-----



  reply	other threads:[~2017-02-14 12:48 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-14 12:27 Help formatting a UTC Timestamp Guy Baumann
2017-02-14 12:48 ` tomas [this message]
2017-02-14 13:11 ` Chris Vine
  -- strict thread matches above, loose matches on Subject: below --
2017-02-14  7:45 Help formatting a UTC TImestamp Guy Baumann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170214124851.GB14935@tuxteam.de \
    --to=tomas@tuxteam.de \
    --cc=guile-user@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).