Forum: Ruby Convert String object to Time

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Mmcolli00 M. (Guest)
on 2008-12-30 00:14
Hi

I have a time value coming in as a string from another program and I
want to convert it to time class and then to regular time attaching AM
or PM on the end. This is what I have tried.

servertime = "13:05"
servertime.Time
servertime.strftime("%p") #<-this gives a no method error for strftime


I was thinking that if I convert it to time just like using the time
class demonstarted below that it would work the same for a time value.
However it doesn't. Do you know what I am doing wrong? Thanks -M

t = Time.now
t.strftime("I%:%M%p")
Rob B. (Guest)
on 2008-12-30 00:39
(Received via mailing list)
On Dec 29, 2008, at 5:13 PM, Mmcolli00 Mom wrote:

>
> I was thinking that if I convert it to time just like using the time
> class demonstarted below that it would work the same for a time value.
> However it doesn't. Do you know what I am doing wrong? Thanks -M
>
> t = Time.now
> t.strftime("I%:%M%p")

You want to look at Time.parse

servertime = Time.parse("13:05")

-Rob

Rob B.    http://agileconsultingllc.com
removed_email_address@domain.invalid
Dejan D. (Guest)
on 2008-12-30 01:07
(Received via mailing list)
On Dec 29, 11:37 pm, Rob B. <removed_email_address@domain.invalid>
wrote:
> > servertime = "13:05"
> You want to look at Time.parse
>
> servertime = Time.parse("13:05")
>
> -Rob
>
> Rob B.          http://agileconsultingllc.com
> removed_email_address@domain.invalid

servertime = Time.parse("13:05").strftime("%I:%M %p")

P.S.
Never trust the user input so be prepared for possible exceptions on
parsing the time string from server ;-)
Mmcolli00 M. (Guest)
on 2008-12-30 04:00
Thanks both of you! This was very helpful! -MC
This topic is locked and can not be replied to.