`

Time Date时间转换和格式化输出

阅读更多
    我们在很多开发的过程中会用到,对时间进行转换或者标准格式输出。

     也有一些情况下,我们mysql的数据库有datetime类型的数据库进行查询,或者保存。

对于,这些不同的情况,简单的罗列一下解决方法,或者,会用到。

先从最一般的开始吧:

1.格式化输出

那么最常用到的应该是:
DateTime.parse(Time.now.to_s).strftime('%Y-%m-%d %H:%M:%S').to_s#就是按照2009-5-14 8:42:13的给定格式输出

这个比较容易也经常用到。

2. 反向格式化

就是,从表单提交了一定格式的字符串,想把它格式化成一个日期类型的变量。
DateTime.parse(params['start_date']).strftime('%Y-%m-%d %H:%M:%S').to_s

这里需要说明DataTime.parse比较强,其他格式也能猜出来,但我处理带时区的时候,总出问题。相当于
DateTime.parse(params['start_date']).strftime('%F %T').to_s


3. 集成多种方式输出

# config/initializers/date_time_formats.rb
Time::DATE_FORMATS.merge!(
  :full => '%B %d, %Y at %I:%M %p',
  :md => '%m/%d',
  :mdy => '%m/%d/%y',
  :time => '%I:%M %p'
)


这时,你就可以简单的通过调用
Time.now.to_s(:full)#按照之前定义"May 14, 2009 at 08:39 AM"


4. 满足变化需求的输出

比如,要求是当前年份,不显示年,其他的年才显示

Time::DATE_FORMATS.merge!(
  :friendly => lambda { |time|
    if time.year == Time.now.year
      time.strftime "%b #{time.day.ordinalize}"
    else
      time.strftime "%b #{time.day.ordinalize}, %Y"
    end
  }
)

>> Time.now.to_s(:friendly)
=> "May 14th"
>> (Time.now-2.years).to_s(:friendly)
=> "May 14th, 2007"


1
0
分享到:
评论

相关推荐

    特定时间格式的转换为TimeDate格式

    这里我们关注的是将“Oct 27 2009 7:00:00.106AM”这样的时间格式转换为TimeDate格式。这个特定格式包含月份(英文缩写)、日、年、小时(12小时制)、分钟、秒和毫秒,并且有AM/PM的区分。在大多数编程语言中,这种...

    python中日期和时间格式化输出的方法小结

    在Python中进行日期和时间格式化输出是一个常用且非常重要的功能,它允许用户按照特定的格式展示日期和时间数据。在Python的标准库中,`datetime`模块提供了很多处理日期和时间相关的功能。本小结将主要介绍`...

    Date格式化

    `Date`格式化在Java、JavaScript、Python等许多编程语言中都非常重要,因为正确处理日期和时间对于数据分析、日志记录、用户界面显示等功能至关重要。 在Java中,`java.util.Date`类和`SimpleDateFormat`类常用于...

    实例017——获取当前的日期、时间并格式化输出.zip

    在编程领域,获取当前日期和时间以及对其进行格式化输出是一项基础但重要的任务。这个实例017主要聚焦于这一主题,适用于多种编程语言,如Python、Java、C#等。在不同的语言中,方法和库可能有所不同,但目标都是...

    懒人原生format方法格式化Date时间日期

    `SimpleDateFormat`是一个具体的类,实现了`DateFormat`接口,用于日期和时间的格式化。它允许我们定义日期和时间的格式模式,如"yyyy-MM-dd HH:mm:ss",然后使用`format`方法将`Date`对象按照这个模式转换为字符串...

    date与long型转换工具

    4. **自定义转换工具**:描述中的"date与long型转换工具"可能包含了这样的功能,即提供一个用户友好的接口,用户输入日期和时间,工具会自动将其转换为对应的long型毫秒值;反之,也可以输入long型毫秒值,工具将其...

    android 日期格式化

    在Android开发中,日期格式化是一项常见的需求,用于将系统时间或特定时间转换为易于阅读和处理的格式。本文将深入探讨几个关键的日期格式化方法,这些方法可以帮助开发者更好地管理和展示日期信息。 ### 一、基本...

    datetime类型用date格式化问题

    - `date("H-i-s", time($rs['c_date']))`: 同样,这里也是将`$rs['c_date']`转换为时间戳后,格式化为小时、分钟和秒的格式。 2. **问题所在**: - `$rs['c_date']`应该是从数据库或其他来源获取的`datetime`类型...

    php和smarty中格式化输出日期和时间的比较

    在PHP和Smarty这两个流行的Web开发工具中,处理日期和时间的格式化输出是常见的任务。本文将探讨如何在两者中实现这一功能,并进行比较。 首先,让我们了解PHP中的日期和时间处理。PHP提供了内置的`date()`函数和`...

    PB 常用函数说明 PB日期转换 PB格式转换

    在PB中,日期和时间处理是常见且重要的功能,涉及多种函数来帮助开发者进行日期转换、格式化以及获取当前时间等操作。本文将深入解析PB中的日期和时间函数,包括日期转换、打印函数等,为PB开发者提供全面的参考指南...

    格林威治时间转化北京时间以及时间转换格式代码大全

    `java.text.SimpleDateFormat`是用于格式化和解析日期的类。你可以自定义日期格式,如"yyyy-MM-dd HH:mm:ss"。下面是一个例子,展示如何将日期字符串按照特定格式解析,然后转换成另一种格式: ```java import ...

    java完美按格式化字符串String转sql.date

    ### Java完美按格式化字符串String转sql.Date 在Java编程中,经常需要处理日期与时间相关的数据。特别是在数据库操作时,经常会遇到需要将字符串类型的日期转换为`java.sql.Date`类型的情况。本文将详细介绍如何...

    ajax请求时json时间格式的格式化显示

    3. `ajaxDataFormat.js`可能包含了`formatTime`函数,该函数可能使用JavaScript内置的`Date`对象来解析和格式化时间戳: ```javascript function formatTime(timestamp) { var date = new Date(timestamp * 1000); ...

    java 时间转换date time = new date()

    综上所述,这些知识点涵盖了Java中处理日期和时间的基本方法,包括创建当前时间、格式化日期、使用定时器、操作日历以及多线程更新GUI界面等方面。掌握了这些内容,就可以较为熟练地在Java程序中处理各种日期和时间...

    java将数字转换为时间格式

    Java提供了多种处理日期和时间的方式,包括传统的`java.util.Date`和`java.text.SimpleDateFormat`等类,以及自Java 8起引入的新API如`java.time`包下的`LocalDate`、`LocalTime`和`LocalDateTime`等。 - **传统API...

    标准时间转换器

    2. 输出:程序将时间戳转换为人类可读的日期和时间格式,如“年-月-日 时:分:秒”,同时提供时区信息,以便用户了解转换后的时间是在哪个时区。 3. 选项:可能包含不同的时间格式化选项,以及转换为其他时间标准(如...

    perl_TimeDate.rar_activeperl timeda_perl TimeDate_perl Timeda_pe

    Time::Date是Perl的一个标准模块,主要功能是处理日期和时间的各种计算和格式化。这个模块非常实用,能够帮助开发者轻松地进行日期和时间的加减、比较、转换等操作。在描述中提到的"可以直接copy到lib下"意味着你...

    fortran-在fortran中对于Date和Time的操作.zip

    对于更复杂的日期和时间操作,如日期的加减、时间的格式化等,可能需要自定义函数或者使用第三方库,如Fortran 90后的`time`模块(非标准,但许多编译器支持)或现代的Fortran库如`Fortran.datetime`。 总的来说,...

    有关java中的Date,String,Timestamp之间的转化问题

    `,输出结果是格式化的日期和时间字符串。 四、Timestamp 转化成 String 可以使用 `SimpleDateFormat` 类将 `Timestamp` 转换成 `String`:`SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); ...

    格式化时间工具类

    在Java编程中,格式化时间是一项常见的任务,用于将日期和时间转换为人类可读的字符串格式。"格式化时间工具类"通常是指一个自定义的类,它封装了Java的日期时间处理方法,以便更方便地进行日期格式化、解析和比较。...

Global site tag (gtag.js) - Google Analytics