On Sep 27, 2009, at 2:26 PM, Rajinder Yadav wrote:
> Craig White wrote:
>> On Mon, 2009-09-28 at 01:52 +0800, Mohit Sindhwani wrote:
>>> Craig White wrote:
>>>> On Sun, 2009-09-27 at 19:26 +0200, Michael .. wrote:
>>>>
>>>>> hi.
>>>>>
>>>>> I want to format a Integer value to a hour with a preceding zero.
>>>>> (two
>>>>> digits)
>>>>> eg. 8 => 08
>>>>>
>>>>> Exists a Ruby or Rails function for that?
>>>>>
>>>> ----
>>>> you can easily create your own function and put it into
>>>> application.rb
>>>> or the helper
>>>>
>>>> myvar < 10 ? "0" + myvar.to_s : myvar.to_s
>>>>
>>>> it must be a string to retain the leading zero
>>> or "%02d" % myvar
>> ----
>> ok - you win
>>
>> Craig
>
> yes another way
>
> irb(main):024:0> val = 8
> => 8
> irb(main):025:0> str = sprintf( "%02d", val )
> => "08"
> irb(main):026:0> p str
> "08"
> => nil
>
> --
> Kind Regards,
> Rajinder Yadav
>
> http://DevMentor.org
> Do Good ~ Share Freely
This isn't another way, it's the exact same way.
--------------------------------------------------------------- String#%
str % arg => new_str
------------------------------------------------------------------------
Format---Uses str as a format specification, and returns the
result of applying it to arg. If the format specification contains
more than one substitution, then arg must be an Array containing
the values to be substituted. See Kernel::sprintf for details of
the format string.
"%05d" % 123 #=> "00123"
"%-5s: %08x" % [ "ID", self.id ] #=> "ID : 200e14d6"
The String class just makes is a bit easier to type.
-Rob
Rob Biedenharn http://agileconsultingllc.com
[email protected]
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---