小工具      在线工具  汉语词典  css  js  c++  java

Java 时间戳与时间字符串相互转换

Java 额外说明

收录于:93天前

Date类
 表示特定的瞬间,精确到毫秒(在java.util.Date包下)

构造方法:
public Date()
表示分配它的时间(精确到毫秒)。
public Date(long date):
创建一个日期对象,指定毫秒值         (需要将long 时间毫秒值转换成Date对象)
public void setTime(long time):
设置毫秒值
 public long getTime()
将Date--->long的毫秒值

Date---->String(格式化) String-->Date(解析)

中间的转换:使用中一个中间类:DateFormat,并且DateFormat是一个抽象类,抽象意味着不能实例化,所以应该考虑用它的子类:
      SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。
 
 SimpelDateFormat的构造方法:
  public SimpleDateFormat(String pattern) :构造一个SimpleDateFormat对象,根据pattern(模式:规则)
 
  SimpleDateFormat XXX = new SimpleDateFormat("xxx年xx月xx日") ;(需要抛出异常)
         simpleDateFormat在解析文本格式的时候,里面 模式(规则)一定要和文本格式的模式一直,否则就出现PareseException
 

package com.JXWork.util;

import com.alibaba.fastjson.JSON;
import com.sun.tools.internal.xjc.reader.xmlschema.bindinfo.BIConversion;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 接口说明
 *
 * @author TF12778 2019/10/9 14:36
 */
public class Utils {

    protected final Logger logger = LoggerFactory.getLogger(this.getClass());

    // Date 有个属性是fastTime,其实new一个Date的时候就是获取了当前系统的时间戳(毫秒数)

    // long数据类型后面默认加L,否则系统默认当作Integer,会报数据too larger

    // mysql中的datetime 对应 Java.util.Date

    /**
     * 时间戳转成时间字符串
     * 例如:1570599496000 转为 "2019-10-09 13:38:16"
     *
     * @param timeStamp
     * @param format 传空默认:"yyyy-MM-dd HH:mm:ss"
     * @return
     */
    public static String timeStamp2Str(long timeStamp, String format) {

        if (timeStamp <= 0) {
//            throw new ServiceException("时间戳不能为空", "500");
            System.out.print("时间戳不能为空");
            return "";
        }
        if(format == null || format.isEmpty()) {
            format = "yyyy-MM-dd HH:mm:ss";
        }
        Date date = new Date(timeStamp);
        SimpleDateFormat dateFormat = new SimpleDateFormat(format);

        return  dateFormat.format(date);
    }

    /**
     * 时间戳转成时间字符串
     * 例如: "2019-10-09 13:38:16" 转为 1570599496000
     *
     * @param dateStr "2019-10-09 13:38:16"
     * @param format 传空默认:"yyyy-MM-dd HH:mm:ss"
     * @return
     */
    public static long str2TimeStamp(String dateStr, String format) {
        if(dateStr == null || dateStr.length() == 0) {
            System.out.print("时间字符串不能为空");
            return 0l;
        }

        if(format == null || format.length() == 0) {
            format = "yyyy-MM-dd HH:mm:ss";
        }

        SimpleDateFormat dateFormat = new SimpleDateFormat(format);
        try {
            Date praseDate = dateFormat.parse(dateStr);
            long timeStamp = praseDate.getTime();
            return timeStamp;
        } catch (ParseException e1) {
            e1.printStackTrace();
        }

        return 0l;
    }
}

. . .

相关推荐

额外说明

macOS下vscode添加代码命令行

1、Ctrl + Alt + P ==> 2、Shell Command: Install 'code' command in PATH

额外说明

JAVA801_Lambda表达式格式、使用前提、省略模式、注意事项以及匿名内部类的区别

文章目录 ①. Lambda表达式的标准格式 ②. Lambda表达式的使用前提 ③. Lambda表达式的省略模式 ④. Lambda 表达式的注意事项 ⑤. Lambda表达式和匿名内部类的区别 ①. Lambda表达式的标准格式 ①. Lambda

额外说明

electron+vue+ts窗口间通信

文章目录 一. 目的 二.逻辑分析 三. 代码示例 "@types/node": "^20.3.1", "@vitejs/plugin-vue": "^4.1.0", "@vueuse/electron": "^10.2.1",

额外说明

【洛谷】三连击

P1618 三连击(升级版) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)   #include <cstring> #include <iostream> #include <algorithm> #define INF 0x3f

额外说明

Java安全模型与简单示例

Java语言从一开始就有安全上的考虑,如何保证物联网下载的Java程序是安全的。 Java安全模型进化 Java将执行程序分为本地和远程两种,本地默认是可信的,而远程被看作是不授信的。对于授信的本地代码,可以访问一切本地资源,而对于非授信的远程代码,则做

额外说明

安卓学习笔记15:使用安卓应用程序资源

文章目录 零、学习目标 一、资源说明 1、字符串资源 2、数组资源 3、颜色资源 4、图片资源 5、音频资源 二、案例演示 - 使用安卓应用程序资源 (一)运行效果 (二)涉及知识点 (三)实现步骤 1、创建安卓应用【UseAppResources】 2

额外说明

ROS从入门到精通3-2:详解xacro语法并优化封装urdf

目录 0 专栏介绍 1 xacro文件是什么? 2 xacro语法详解 2.1 属性 2.2 宏 2.3 模块化 3 案例:差速轮式机器人描述 3.1 属性 3.2 底盘 3.3 轮子 3.4 集成 0 专栏介绍 本专栏旨在通过对ROS的系统学习,掌握R

额外说明

C1能力认证训练题解析 _ 第二部分 _ Web基础

目录 一、语义化标签 二、表单标签 三、转义字符 四、head 头 五、CSS 引入方式 六、CSS 背景属性 七、CSS 文本属性 八、基础选择器 九、伪类选择器 十、伪元素选择器 十一、CSS优先 十二、块级元素和行内元素 十三、盒子模型 十四、定位

额外说明

Windows系统缺少wmpdxm.dll文件导致程序无法运行问题

其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个wmpdxm.dll文件(挑

额外说明

几种常见的JavaScript兼容性问题及解决方案

常见的几个JavaScript兼容问题及解决方案 事件对象兼容性 e = ev || window.event; 滚动事件兼容性 scrollTop = document.documentElement.scrollTop || document.bo

ads via 小工具