首页编程java编程java时间格式有什么?java时间格式转换

java时间格式有什么?java时间格式转换

编程之家2023-10-1297次浏览

其实java时间格式有什么的问题并不复杂,但是又很多的朋友都不太了解java时间格式转换,因此呢,今天小编就来为大家分享java时间格式有什么的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

java时间格式有什么?java时间格式转换

Java时间格式转换问题

package Date类;

import java.text.ParseException;

import java.text.SimpleDateFormat;

java时间格式有什么?java时间格式转换

import java.util.Calendar;

import java.util.Date;

/*

java时间格式有什么?java时间格式转换

*需求

*给定一个日期字符串,返回该字符串描述的时间

* 45天以后的日期

*思路:

*计算日期需要Calendar所以要将字符串转换为Calendar然后计算时间,再将其转换回

*字符串输出。

*步骤:1,创建用于转化字符串到Date的SimpleDateFormat并指定日期格式字符串

* 2:将给定的日期字符串转换为Date对象

* 3:创建Calendar的实例

* 4:将转化的Date对象设置到Calendar中,使Calendar的实例代表Date描述的日期

* 7:将Date对象通过SimpleDateFormat转化为字符串并输出;

*/

public class StringToDateCalendar{

/**

* String Date Calendar之间的转换

*@param args

*@throws ParseException

*/

public static void main(String[] args) throws ParseException{

String str="2013-10-10";

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");//1

Date date=sdf.parse(str);

Calendar calendar=Calendar.getInstance();

calendar.setTime(date);

String cc=sdf.format(date);

System.out.println(cc);

}

}

java如何把时间格式转为毫秒

获取毫秒数,即long类型的数值,仅能返回自 1970年 1月 1日 00:00:00 GMT以来的毫秒数。

一楼、二楼的回答就是正确的,不过在使用中还需要根据自身使用环境,直接使用或者进一步按需优化后再使用。

最常使用的就是,把String类型的日期先转换为Date类型,最后直接调用.getTime()即可,这也是比较方便的了。

还有就是以上提到的Timestamp类中的valueOf(String s)方法,这里一定要注意,给定的字符串日期型数据必须符合置顶指定格式:yyyy-mm-dd hh:mm:ss[.fffffffff],否则会抛出异常。

PS>

Java时间格式转换,如何获得时区

//我实现一个时钟窗口程序给你了,好让你更容易理解,希望对你有帮助。

import java.awt.*;

import java.awt.event.*;

import java.util.*;

//世界时钟

public class TimerTest{

public static void main(String[] args){

new TimerTestFrame("世界时钟");

}

}

class TimerTestFrame extends Frame{

/**

*

*/

private static final long serialVersionUID= 1L;

public TimerTestFrame(String s){

super(s);

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

dispose();

System.exit(0);

}

});

setLayout(new GridLayout(2, 6));

ClockCanvas clk1= new ClockCanvas("北京","GMT+8");//创建时钟

ClockCanvas clk2= new ClockCanvas("巴黎","GMT+2");

ClockCanvas clk3= new ClockCanvas("华盛顿","GMT-4");

ClockCanvas clk4= new ClockCanvas("洛衫矶","GMT-7");

ClockCanvas clk5= new ClockCanvas("伦敦","GMT+1");

ClockCanvas clk6= new ClockCanvas("芝加哥","GMT-5");

add(clk1);

add(clk2);

add(clk3);

add(clk4);

add(clk5);

add(clk6);

setSize(500, 350);//设置框架宽高

setVisible(true);

}

}

class ClockCanvas extends Canvas implements Runnable{

/**

*

*/

private static final long serialVersionUID= 1L;

private int seconds= 0;

private String city;

private GregorianCalendar calendar;

Thread t;

public ClockCanvas(String c, String tz){

city= c;

//也可以通过TimeZone.setTimeZone(String n)函数改变时区,n为时区参数名。

calendar= new GregorianCalendar(TimeZone.getTimeZone(tz));

t= new Thread(this);

t.start();

setSize(125, 125);//设置画布大小

setBackground(Color.black);

}

//重写父类的方法绘制时钟图形

public void paint(Graphics g){

Graphics2D g2d=(Graphics2D) g;

BasicStroke bstroke= new BasicStroke(2.0f);

g2d.setStroke(bstroke);

g2d.setColor(Color.green);

g2d.drawOval(0, 0, 100, 100);

bstroke= new BasicStroke(5.0f);

g2d.setStroke(bstroke);

g2d.drawLine(50, 0, 50, 5);

g2d.drawLine(0, 50, 5, 50);

g2d.drawLine(50, 95, 50, 98);

g2d.drawLine(95, 50, 98, 50);

double hourAngle= 2* Math.PI*(seconds- 3* 60* 60)

/(12* 60* 60);

double minuteAngle= 2* Math.PI*(seconds- 15* 60)/(60* 60);

double secondAngle= 2* Math.PI*(seconds- 15)/(60);

bstroke= new BasicStroke(5.0f);

g2d.setStroke(bstroke);

g2d.drawLine(50, 50, 50+(int)(30* Math.cos(hourAngle)),

50+(int)(30* Math.sin(hourAngle)));

bstroke= new BasicStroke(3.0f);

g2d.setStroke(bstroke);

g2d.drawLine(50, 50, 50+(int)(40* Math.cos(minuteAngle)),

50+(int)(40* Math.sin(minuteAngle)));

bstroke= new BasicStroke(1.0f);

g2d.setStroke(bstroke);

g2d.drawLine(50, 50, 50+(int)(45* Math.cos(secondAngle)),

50+(int)(45* Math.sin(secondAngle)));

g2d.setColor(Color.red);

g2d.drawString(city, 35, 115);

}

public void timeElapsed(){

//new Date()获得当前时间

System.out.println(new Date());

calendar.setTime(new Date());

seconds= calendar.get(Calendar.HOUR)* 60* 60

+ calendar.get(Calendar.MINUTE)* 60

+ calendar.get(Calendar.SECOND);

}

public void run(){

try{

while(true){

Thread.sleep(300);

timeElapsed();

repaint();

}

} catch(InterruptedException e){

}

}

}

java时间格式转换

实现思路就是先通过SimpleDateFormat方法定义一个时间类型的格式,之后SimpleDateFormat的format方法将一个符合时间格式的字符串匹配成对应的格式

举例:

String str0="2015年07月05日";

Dated1=newSimpleDateFormat("yyyy年MM月dd日").parse(str0);//定义起始日期

SimpleDateFormatsdf0=newSimpleDateFormat("yyyy");//定义一个只有年份的

SimpleDateFormatsdf1=newSimpleDateFormat("MM");//月份的

SimpleDateFormatsdf2=newSimpleDateFormat("dd");//日的

Stringstr1=sdf0.format(d1);//取出特定日期d1的年份

Stringstr2=sdf1.format(d1);//取出特定日期d1的月份

Stringstr3=sdf2.format(d1);//取出特定日期d1的日

System.out.println("年份为:"+str1);

System.out.println("月份为:"+str2);

System.out.println("日为:"+str3);

文章分享结束,java时间格式有什么和java时间格式转换的答案你都知道了吗?欢迎再次光临本站哦!

酸酸乳(酸酸乳和优酸乳有什么区别)中级java工程师要会什么 中级java工程师要求