I have the following peace of code:
arr = [5, 5, 2002]
date = Date.new(arr[2].to_i, arr[1].to_i, arr[0].to_i)
I need to convert the String elements in the array into int. I want to
do that with to_i, but this method returns me a Fixnum, thus I couldn't
fill my date Object...
Any suggestions?
1. Your array contains Fixnum values already.
2. You're probably getting a different error.
3. Fixnum values are integer values.
If you have a problem, your real code and/or a backtrace would be useful.
-austin
···
On 9/20/06, Yu Co <djhackebeil@yahoo.de> wrote:
Hi all,
I have the following peace of code:
arr = [5, 5, 2002]
date = Date.new(arr[2].to_i, arr[1].to_i, arr[0].to_i)
I need to convert the String elements in the array into int. I want to
do that with to_i, but this method returns me a Fixnum, thus I couldn't
fill my date Object...
Any suggestions?
I have the following peace of code:
arr = [5, 5, 2002]
date = Date.new(arr[2].to_i, arr[1].to_i, arr[0].to_i)
I need to convert the String elements in the array into int. I want to do that with to_i, but this method returns me a Fixnum, thus I couldn't fill my date Object...
Any suggestions?
This program works fine for me ...
heron@ka6toe ~ $ cat td.rb
#! /usr/bin/env ruby
···
#
require 'date'
arr = [5,5,2002]
date = Date.new(arr[2], arr[1], arr[0])
puts "Date is #{date}"
heron@ka6toe ~ $ ./td.rb
Date is 2002-05-05
heron@ka6toe ~ $
Another option is to use the * (splat) operator as follows:
I have the following peace of code:
arr = [5, 5, 2002]
date = Date.new(arr[2].to_i, arr[1].to_i, arr[0].to_i)
I need to convert the String elements in the array into int. I want to
do that with to_i, but this method returns me a Fixnum, thus I couldn't
fill my date Object...
Any suggestions?
Yes. Try it again.
1. Your array contains Fixnum values already.
2. You're probably getting a different error.
3. Fixnum values are integer values.
If you have a problem, your real code and/or a backtrace would be
useful.
-austin
The error message looks like
{RUBY_HOME}/lib/ruby/1.8/date.rb:591:in `new': invalid date
(ArgumentError)
from {}db/old_DB.rb:98:in `parseToDate'
from {}db/old_DB.rb:61:in `callMethod'
from {}db/old_DB.rb:47:in `callMethod'
...
I am wondering why Ruby converts a String to Fixnum after calling to_i
Because that's what to_i does? An integer IS a Fixnum. Also, the
code you posted as not working works just fine, which is why the
subtle hint by Austin to post the *real* code that is actually
breaking. Chances are you array doesn't contain what you assume it
does.
···
On 9/20/06, Yu Co <djhackebeil@yahoo.de> wrote:
Austin Ziegler wrote:
> On 9/20/06, Yu Co <djhackebeil@yahoo.de> wrote:
>> Hi all,
>>
>> I have the following peace of code:
>> arr = [5, 5, 2002]
>> date = Date.new(arr[2].to_i, arr[1].to_i, arr[0].to_i)
>>
>> I need to convert the String elements in the array into int. I want to
>> do that with to_i, but this method returns me a Fixnum, thus I couldn't
>> fill my date Object...
>> Any suggestions?
>
> Yes. Try it again.
>
> 1. Your array contains Fixnum values already.
> 2. You're probably getting a different error.
> 3. Fixnum values are integer values.
>
> If you have a problem, your real code and/or a backtrace would be
> useful.
>
> -austin
The error message looks like
{RUBY_HOME}/lib/ruby/1.8/date.rb:591:in `new': invalid date
(ArgumentError)
from {}db/old_DB.rb:98:in `parseToDate'
from {}db/old_DB.rb:61:in `callMethod'
from {}db/old_DB.rb:47:in `callMethod'
...
I am wondering why Ruby converts a String to Fixnum after calling to_i
>> fill my date Object...
>
I am wondering why Ruby converts a String to Fixnum after calling to_i
Because that's what to_i does? An integer IS a Fixnum. Also, the
code you posted as not working works just fine, which is why the
subtle hint by Austin to post the *real* code that is actually
breaking. Chances are you array doesn't contain what you assume it
does.
All right, then I'm wondering why the array doesn't accept Fixnum as an
argument...
You are having trouble with your assumptions. A Fixnum is an Integer. Arrays accept Integers. Your sample code posted runs without modification and thus isn't broken at all.
You real code has a bug, but you will need to show us that code if you want us to help fix it.
James Edward Gray II
···
On Sep 21, 2006, at 1:05 AM, Yu Co wrote:
All right, then I'm wondering why the array doesn't accept Fixnum as an
argument...