java中将RFC1123日期时间格式化

JDK8新的日期时间类转换方法:

package com.example;

import org.junit.Test;

import java.time.Instant;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;

public class TestRFC1123 {

    String rfc1123Times[] = new String[]
            {
                    "Sat, 08 Jan 2000 18:31:41 GMT",
                    "Wed, 27 Sep 2006 21:36:45 +0200"
            };

    /***
     * jdk 8 new date/time
     */
    @Test
    public void testParse()
    {
        String rfc1123Time;
        for (int i = 0; i < rfc1123Times.length; i++) {
            rfc1123Time = rfc1123Times[i];

            DateTimeFormatter formatter = DateTimeFormatter.RFC_1123_DATE_TIME;
            Instant instant = Instant.from(formatter.parse(rfc1123Time));
            System.out.println("国际时间:"+instant);//说法可能有错

            ZonedDateTime zdt =
                    ZonedDateTime.parse(
                            rfc1123Time ,
                            DateTimeFormatter.RFC_1123_DATE_TIME
                    );

            ZoneId zone = ZoneId.of( "Asia/Shanghai" );  // Or "Asia/Kolkata", etc.
            ZonedDateTime zdtMontreal = zdt.withZoneSameInstant( zone );

            System.out.println("带时区的时间:"+zdt+",北京时间:"+zdtMontreal);
        }
    }
}

参考来源:How to Convert RFC-1123 date-time formatter, to local time

原文地址:https://www.cnblogs.com/passedbylove/p/12209989.html

时间: 2024-09-28 02:28:47

java中将RFC1123日期时间格式化的相关文章

java 8及以下版本的日期时间格式化与解析

本篇文章涵盖多种字符串日期时间格式化以及日期时间解析,包括java8中的日期时间解析与格式化 下图阐述了什么是时间格式化,什么是时间解析 如上图所示 Date---->String 称之为格式化(format), String --->Date 称之为解析(parse), 目标类型是字符串叫格式化,目标类型是日期对象叫解析,读者注意上图箭头的方向,上图节选自  <<java疯狂讲义>> 1,SimpleDateFormat("yyyy-MM-dd HH:mm:

String.Format,DateTime日期时间格式化集锦

DateTime dt = DateTime.Now;//2010年10月4日 17点05分 string str = ""; //str = string.Format("{0:y yy yyy yyyy}", dt); //10 10 2010 2010 //str = String.Format("{0:M MM MMM MMMM}", dt); //10 10 十月 十月 //str = String.Format("{0:d

String.Format,DateTime日期时间格式化

DateTime dt = DateTime.Now;//2010年10月4日 17点05分            string str = "";            //str = string.Format("{0:y yy yyy yyyy}", dt); //10 10 2010 2010            //str = String.Format("{0:M MM MMM MMMM}", dt); //10 10 十月 十月 

Swift教程_基础技术_获取当前日期时间、日期时间格式化及转换

Swift教程_基础技术_类型转换(父子类转换:Int.Double.String转换) Swift教程_基础技术_获取当前日期时间.日期时间格式化及转换 1.获取当前日期时间 var nowDate = NSDate() var formatter = NSDateFormatter() formatter.dateFormat = "yyyy-MM-dd HH:mm:ss" var dateString = formatter.stringFromDate(nowDate) pri

js -- 日期时间格式化

/** * js日期时间格式化 * @param date 时间读对象 * @param format 格式化字符串 例如:yyyy年MM月dd日 hh时mm分ss秒 * @returns {string} 返回格式化后的字符串 */function dateFormat (date, format) { var o = { "M+": date.getMonth() + 1, //month "d+": date.getDate(), //day "h+

PHPCMS V9调用时间标签 |日期时间格式化

PHPCMS V9 如何调用时间标签,下面分享常见的调用时间标签 |日期时间格式化 1.日期时间格式化显示: a标准型:{date('Y-m-d H:i:s', $rs['inputtime'])} 输出为:2013-01-31 13:15:10 b拆分型:{date('Y',$rs[inputtime])}年{date('m',$rs[inputtime])}月{date('d',$rs[inputtime])}日 输出为:2013年01月31日 c扩展型: {date('Y',$inputt

Java 8 的日期时间新用法

1.// The current date and timeLocalDateTime.now();// construct from valuesLocalDate.of(2012, 12, 12);LocalDate.of(2012, Month.DECEMBER, 12);// Somewhere in the middle of 1970LocalDate.ofEpochDay(150);// the train I took home todayLocalTime.of(17, 18)

sql语句中日期时间格式化查询

      今天在做会员管理系统搜索时,我发现以前的搜索时间方式不太科学,效率也不是太高.由其是在查询指定的时间相等的时候,我在数据库中都存这样的时间格式"2007-5-22 14:32:12"当我们在查询2007-5-22是否与它相等,结果是不相等的.      所我们都喜欢找其它途径来解决这个问题.但是我发现我们的方法都不是太好,因为我们有的时候对sql sever的语句特性还了解的不够彻底.所以我查询了查sql server有帮助,终于发现个好东西,可以解决这个问题. CONVE

js日期/时间格式化方法

一.javascript Date format(日期格式化) 方法一: // 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) // 例子: // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:0