`
ouspec
  • 浏览: 880294 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ruby如何随心所欲的显示时间 How to do friendly date formatting in Ruby

阅读更多
找到一篇老外的帖子,很不错,希望对新手有帮助。

比如要显示 2006-10-23 18:48 =>  Time.now.strftime("%Y-%m-%d %H:%M")

---------

At lunch today I wanted to add today’s date onto a Rails page.

<%= Time.now %>

works relatively well enough, except it gives the date in a pretty ugly format… like this:

Thu Aug 31 13:51:33 US Mountain Standard Time 2006

I don’t need that much information and I’d like the day and month to be fully spelled out. I figured that reformatting the date should be awfully simple. It is, but it isn’t straightforward and it was difficult to find any documentation about it.

I looked in the rdoc for the ruby API. I looked at the “Time” class and just didn’t see what I was looking for. There’s so much there, I just didn’t look hard enough. I looked in the pick-axe book. No help there either. Finally, I went back to my copy of the rails mailing list and found the answer! Then I went back into the API and found it there as well.

The magic method is strftime. Find the time class in the api and scroll waaaaaaaaaaaaaaaaay down to strftime. With this method, you can pretty much spit out time and date strings however you’d like. Here’s what the API says:


time.strftime( string ) => string

Formats time according to the directives in the given format string. Any text not listed as a directive will be passed through to the output string.

Format meaning:

  %a - The abbreviated weekday name (``Sun'')
  %A - The  full  weekday  name (``Sunday'')
  %b - The abbreviated month name (``Jan'')
  %B - The  full  month  name (``January'')
  %c - The preferred local date and time representation
  %d - Day of the month (01..31)
  %H - Hour of the day, 24-hour clock (00..23)
  %I - Hour of the day, 12-hour clock (01..12)
  %j - Day of the year (001..366)
  %m - Month of the year (01..12)
  %M - Minute of the hour (00..59)
  %p - Meridian indicator (``AM''  or  ``PM'')
  %S - Second of the minute (00..60)
  %U - Week  number  of the current year,
          starting with the first Sunday as the first
          day of the first week (00..53)
  %W - Week  number  of the current year,
          starting with the first Monday as the first
          day of the first week (00..53)
  %w - Day of the week (Sunday is 0, 0..6)
  %x - Preferred representation for the date alone, no time
  %X - Preferred representation for the time alone, no date
  %y - Year without a century (00..99)
  %Y - Year with century
  %Z - Time zone name
  %% - Literal ``%'' character

   t = Time.now
   t.strftime("Printed on %m/%d/%Y")   #=> "Printed on 04/09/2003"
   t.strftime("at %I:%M%p")            #=> "at 08:56AM"


So, once found it was easy enough. Here’s what I put in my .rhtml file:

<%= Time.now.strftime("%A %B %d, %Y") %>

which spits out: “Thursday August 31, 2006”.

Also, this:

<%= Time.now.strftime("%I:%M %p") %>

spits out something like: “01:51 PM”.

Again, this is probably very elementary for most RubyNoob readers, but I’ve posted it in part as a reference for me to easily find when I need it again.

I was really sure that Rails had some quick/easy way to do this, but I couldn’t find it. If there’s an easier Railsish way to do this, please let me know in the comments. Thanks!

原文地址:http://rubynoob.com/articles/2006/08/31/how-to-do-friendly-date-formatting-in-ruby
分享到:
评论
1 楼 dfinger 2006-10-25  
好贴..要顶.........

这么说好似太...noob了...


不过还是那个问题...
人人知道时间问题...

记得java的时间问题么...
他们这帮人只考虑自己..不给其他语言和文化的人想想么?

阳历的话..要自己写了不成...

有空研究下..应该有对应的方法罢...

相关推荐

    Basic Visual Formatting in CSS

    inline-block, list-item, and run-in boxes ■ Change the type of box an element generates, from inline to block, or list-item to inline ■ Dive into the complexities of horizontal and vertical block-...

    Ruby Pocket Reference

    - **`sprintf` and Time Formatting Directories:** Ruby provides powerful string formatting and date/time handling capabilities. The book covers the syntax and usage of `sprintf` and the time formatting...

    Ruby.Pocket.Reference

    - Describes how to add comments to Ruby code using the `#` symbol for single-line comments and the `=begin` and `=end` markers for multi-line comments. Comments are crucial for documenting code and ...

    UE(官方下载)

    This tutorial will show you how to access the information you need in your browser by simply highlighting your text in the edit window and clicking your toolbar button How to install UE3 UE3 is the ...

    Learning Web Design: A Beginner’s Guide to HTML... ..., 5th Edition

    It is simple and clear enough for beginners, yet thorough enough to be a useful reference for experienced developers keeping their skills up to date. Build HTML pages with text, links, images, tables...

    Your Excel Survival Kit pdf

    this chapter you learn how to use Power Query to do that work in minutes and, even more amazingly, how to store the steps you take so that all you have to do when you get next month’s data is change ...

    C#学习的101个经典例子

    Windows Forms - How-To Data Grid Formatting Windows Forms - How-To DataGrid Sorting and Filtering Windows Forms - How-To Inherited Windows Forms Windows Forms - How-To ListBox and ComboBox Windows ...

    Mastering Swift 4, 4th Edition-Packt Publishing(2017).pdf

    Chapter 14, Concurrency and Parallelism in Swift, shows you how to use both grand central dispatch and operation queues to add concurrency and parallelism to your applications. Understanding and ...

    Pragmatic.Clojure.Applied.From.Practice.to.Practitioner.1680

    Discover how to use Clojure in the real world, and unlock the speed and power of this beautiful language on the Java Virtual Machine. Clojure Applied gives you the practical, realistic advice and ...

    Word 2013 Bible, 4th edition

    From document design to creating master documents to applying security to collaborating in the Cloud, you'll learn not just how to do tasks, but the best ways to do them, and why. Details everything...

    System.Net.Http.Formatting.dll

    System.Net.Http.Formatting.dll

    jquery操作asp.net中GridView方法

    How to access particular cell in gridview using jQuery How to filter GridView records using jQuery How to search through GridView records using jQuery GET ASP.NET GridView Cell value using jQuery ...

    Excel.2013.Working.with.Data.Ranges.and.Tables

    You learn how to copy these validation rules to other cells, how to remove validation rules from cells and how to use the Data Form dialog box to enter and locate data in a range. Next you learn how...

    System.Net.Http.Formatting各版本.zip

    在.NET框架中,`System.Net.Http.Formatting`是一个关键的组件,主要用于处理HTTP客户端的输入和输出数据格式化。这个库提供了对JSON(JavaScript Object Notation)和XML等数据格式的支持,使得C#开发者能够方便地...

    Excel.2016.Up.To.Speed.B01

    In no time at all you're be importing and exporting data, creating formulas, modifying and formatting spreadsheets, setting up and formatting data in tables, creating beautiful charts, adding and ...

    Formatting Dates, Times and Numbers in ASP.NET

    在IT领域,尤其是在Web开发中,格式化日期、时间和数字是至关重要的技能,尤其是在使用ASP.NET框架时。本文将深入探讨在ASP.NET中如何格式化日期、时间和数字,包括标准格式字符串的应用以及自定义格式化的高级技巧...

    System.Net.Http.Formatting.xml

    System.Net.Http.Formatting.xml

    TestComplete Cookbook(PACKT,2013)

    TestComplete is an automated testing tool, designed for ...Understand how to use log formatting and log generation in a proper format Get to grips with how to work with non-standard controls elements

Global site tag (gtag.js) - Google Analytics