# Date format conversion

**URL:** <https://www.ruby-forum.com/t/date-format-conversion/139581>\
**Category:** Rails\
**Created:** [June 5, 2008, 5:58am UTC](https://www.ruby-forum.com/t/date-format-conversion/139581 "2008-06-05T05:58:41Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![wawa88](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/b5a626/32.png) [@wawa88](https://www.ruby-forum.com/u/wawa88)\
**Post date:** [June 5, 2008, 5:58am UTC](https://www.ruby-forum.com/t/date-format-conversion/139581/1 "2008-06-05T05:58:41Z")

</div>

Now i facing the date format in my  
database. I am using mysql as my database then the datetime format is  
2008-06-04 15:17:55. But my datetime format is like this Fri May 23  
16:43:28 +0800 2008. So when i execute it say incorrect datetime value.  
how do i change the date\_format in rails.

I did not save in any variable like @email\_date\_time so i cannot do

DateTime.parse(@email\_date\_time)

Because the datetime is i retrieved from  
internet email and save it into a text file. So there isn’t any variable  
assign to it.  
Fri May 23 16:43:28 +0800 2008 is a rfc822 format.  
So how can i change mysql date format to rfc822 date\_format in rails.

Thanks.

Wawa

---

<div class="post-metadata">

**Author:** ![wawa88](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/b5a626/32.png) [@wawa88](https://www.ruby-forum.com/u/wawa88)\
**Post date:** [June 5, 2008, 6:37am UTC](https://www.ruby-forum.com/t/date-format-conversion/139581/2 "2008-06-05T06:37:22Z")

</div>

Time.parse(“Fri May 23 16:43:28 +0800 2008”)

---

<div class="post-metadata">

**Author:** ![wawa88](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/b5a626/32.png) [@wawa88](https://www.ruby-forum.com/u/wawa88)\
**Post date:** [June 5, 2008, 7:02am UTC](https://www.ruby-forum.com/t/date-format-conversion/139581/3 "2008-06-05T07:02:35Z")

</div>

Fredrik T. wrote:

> Time.parse(“Fri May 23 16:43:28 +0800 2008”)

I do some coding in rails like these:  
datetime = “”  
msisdn = “”  
File.open(Pathname.new(ARGV[0]), ‘r’) do |mbox|  
RMail::Mailbox.parse\_mbox(mbox) do |raw|  
count += 1  
print “Mail #{count}\n”  
message = RMail::Parser.read(raw)

```
msisdn = message.header['From']
datetime = message.header['Date']
print "From: " + message.header['From'] + "\n"
print "Date: " + message.header['Date'] + "\n"

```

datetime = message.header[‘Date’] will read the data as Fri May 23  
16:43:28 +0800 2008 while mysql doesn’t match with these format.

So how do i format it in rails to match with mysql. Thanks

Wawa

---

<div class="post-metadata">

**Author:** ![wawa88](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/b5a626/32.png) [@wawa88](https://www.ruby-forum.com/u/wawa88)\
**Post date:** [June 5, 2008, 1:46pm UTC](https://www.ruby-forum.com/t/date-format-conversion/139581/4 "2008-06-05T13:46:39Z")

</div>

You may try with:

mysql\_datetime = datetime.strftime(“%Y-%d-%m %H:%M:%S”)

Its a ruby (not rails) method from:  
[http://www.ruby-doc.org/core/classes/DateTime.html](http://www.ruby-doc.org/core/classes/DateTime.html)

---

<div class="post-metadata">

**Author:** ![wawa88](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/b5a626/32.png) [@wawa88](https://www.ruby-forum.com/u/wawa88)\
**Post date:** [June 5, 2008, 1:54pm UTC](https://www.ruby-forum.com/t/date-format-conversion/139581/5 "2008-06-05T13:54:00Z")

</div>

the rails method:

date.to\_s(:db)

this will output any DateTime for use with SQL
