java 如何从Long型的时间中取得年月日

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 如何从Long型的时间中取得年月日相关的知识,希望对你有一定的参考价值。

比如
Date today = new Date();
long time = today.getTime();
如何再从这个long型的time中转换得到年月日

第一种方法:
package cn.yw.test;

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

public class DateTest

public static void main(String[] args)
Date today = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
format.format(today);
/*输入日期*/
System.out.println(format.format(today));
String datetime = format.format(today);
//输入年
String year = datetime.substring(0, datetime.indexOf("-"));
System.out.println(year);
//输出月
String month = datetime.substring(datetime.indexOf("-")+1, datetime.lastIndexOf("-"));
System.out.println(month);
//输出日
String day = datetime.substring(datetime.lastIndexOf("-")+1, datetime.length());
System.out.println(day);




第二种方法:
Date today = new Date();
long time = today.getTime();
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(time);
//输出年
System.out.println(calendar.get(Calendar.YEAR));
//输出月 :由于月份是从0开始的所以要加上1
System.out.println(calendar.get(Calendar.MONTH+1));
//输出日
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
希望能够帮助你解决问题
参考技术A

Date 有构造器

Date(long date)

你直接把长整形往里面放就行了

比如

       

Date date = new Date(1375864674543L);
        System.out.println(date);

返回的是Wed Aug 07 16:37:54 CST 2013

传递的参数代表1970 年 1 月 1 日 00:00:00 GMT 以来的指定毫秒数。

本回答被提问者采纳
参考技术B Date today = new Date();

long time = today.getTime();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 这句话的意思时间格式化显示的方式 也可以是 这个样子的//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") 显示方式自己定义。
String result = sdf.format(time); // 这里就是把时间格式化成你要的值。
参考技术C Date date=new Date(System.currentTimeMillis());
System.out.println((1900+date.getYear())+"-"+(date.getMonth()+1)+"-"+date.getDate()+"");//获取的年份是1900年开始的需要加上1900,月份是从0开始的
参考技术D import java.text.SimpleDateFormat;
import java.util.Date;
//将long字符串转换成格式时间输出
public class LongToString 
public static void main(String argsp[])
String time="1256006105375";
Date date=new Date(Long.parseLong(time));
SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
time=formatter.format(date);
System.out.println(time);



import java.text.SimpleDateFormat;
import java.util.Date;
import ognl.ParseException;
//字符串转换成时间
public class StringToDate 
public static void main(String argsp[]) throws Exception
String time="2010-11-20 11:10:10";

Date date=null;
SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
date=formatter.parse(time);
System.out.println(date);




import java.text.SimpleDateFormat;
import java.util.Date;
// 取得当前系统时间,返回yyyy-MM-dd HH:mm:ss字符串
public class StringToDate 
public static void main(String argsp[]) throws Exception

Date date=new Date();
SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time=formatter.format(date);
System.out.println(time);

oracle中如何将long型的数据转换为char型

oracle中的long类型即clob类型,可用to_char函数转换成char类型。
使用中注意事项:
1、实际上处理CLOB字段的时候,直接TO_CHAR,当长度超过4000的时候,会报错,提示列被截取;
2、直接使用SUBSTR对CLOB字段进行截取,是不能起到任何作用的;
3、可以使用dbms_lob.substr(clobcolumn,4000),对CLOB字段进行截取;截取的长度是4000还是2000根据存储的是汉字和数据决定长度。
参考技术A LONG类型列不能用大部分SQL函数。建议ORACLE别用LONG转换可以INSERT 方法:含有LONG的表table_with_long需要创建个有CHAR的表:table_with_varcharbeginfor cv in ( select col_long from table_with_long)loopif instr(cv.col_long,'key_word') > 0 then本回答被提问者采纳

以上是关于java 如何从Long型的时间中取得年月日的主要内容,如果未能解决你的问题,请参考以下文章

java如何得到年月日。

java基础知识面试题(41-95)

用js把后台传回来的时间long值改成年月日格式

将java怎么将long类型的时间转换成年月日的形式

java怎么分开获取系统年月日

请问高手,用Calendar包实现,在java中如何获取指定年月日的星期?