在java中如何把字符串转换成时间格式?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在java中如何把字符串转换成时间格式?相关的知识,希望对你有一定的参考价值。

有这样一个字符串:“20070911121547”,
转换成时间格式:2007-09-11 12:15:47
请帮忙。

方法一:

public static void main(String[] args) throws Exception

Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2005-06-09"); 

String now = new SimpleDateFormat("yyyy年MM月dd日").format(date);

System.out.println(now);

输出结果:2005年06月09日

方法二:

public class bb

public static void main(String[] args)

// TODO Auto-generated method stub

SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhhmmss");

String dateString = "20071128175545";

try

Date date = df.parse(dateString);

System.out.println(df.format(date));

catch (Exception ex)

System.out.println(ex.getMessage());

扩展资料

Java指定了一些可访问的修饰符如:private、protected、public,任何方法或变量都可以声明为public,Java可以从该类之外的地方访问。因为main方法是公共的,JVM就可以轻松的访问执行它。

在main里面args[]就是两个长度的数组:value1存在args[0]中,value2存在args[1]中。

args[0]存储的是命令,其后才是参数。

String args[ ]或者String[ ] args表示给主方法传一个字符串数组。

而args是一个字符串数组的变量名,不是关键字,是arguments的缩写,只是一个默认名,一般都习惯性照写。

例如:

class Example

public static void main(String args[ ])

System.out.println("This is a simple Java program.");

参考技术A

字符串转时间:

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);

扩展资料:

既然有字符串时间,就有时间串字符,方法:

假如把今天的日期转成字符串可用 String str = sdf.format(new Date());这个字符串内容的格式类似2017-12-08 19:20:00。透过这个API我们便可以随心所欲的将日期转成我们想要的字符串格式。

例如:希望将日期输出成2017年7月10日

可以这么写:

SimpleDateFormat sdf =   new SimpleDateFormat( " yyyy年MM月dd日 " );

String str = sdf.format(new Date());

str便会依照我们设定的格式输出了。

参考技术B

/**
* 将时间字符串转化为日期格式字符串
* @param timeStr 例如:20070911121547

* @return String 例如:2007-09-11 12:15:47

*/

@SuppressLint("SimpleDateFormat")

public static String timeStrToDateStr(String timeStr)

if (null == timeStr)

return null;

String dateStr = null;

SimpleDateFormat sdf_input = new SimpleDateFormat("yyyyMMddhhmmss");//输入格式 SimpleDateFormat sdf_target =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //转化成为的目标格式

try

dateStr = sdf_target.format(sdf_input.parse(timeStr));

catch (Exception e)

return dateStr;

再举个例子。

package com.lxk.DateFormat;

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

/**
* Created by lxk on 2016/11/4
*/
public class Format
public static void main(String[] args)
Date ss = new Date();
System.out.println("一般日期输出:" + ss);
System.out.println("时间戳:" + ss.getTime());
//Date aw = Calendar.getInstance().getTime();//获得时间的另一种方式,测试效果一样
SimpleDateFormat format0 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = format0.format(ss.getTime());//这个就是把时间戳经过处理得到期望格式的时间
System.out.println("格式化结果0:" + time);
SimpleDateFormat format1 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
time = format1.format(ss.getTime());
System.out.println("格式化结果1:" + time);


参考技术C public static void main(String[] args) throws ParseException
String time = "2015-10-08 17:00:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date date_util = sdf.parse(time); //转换为util.date
java.sql.Date date_sql = new java.sql.Date(date_util.getTime());//转换为sql.date
System.out.println(date_util);
System.out.println(date_sql);
String date = sdf.format(date_sql);
System.out.println(date);
date = sdf.format(date_util);
System.out.println(date);
参考技术D 1.DateFormat f = new SimpleDateFormat("yyyyMMddHHmmss");//设置格式
Date d = f.parse("20070911121547")

2.DateFormat f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置格式
Date d = f.parse("2007-09-11 12:15:47");

Java中怎么把字符串转换成日期格式啊

就像"2005-06-09"怎么才能让它输出2005年6月9日呢,我用SimpleDateFormat 中的format了但不是太会用,那位大虾能给我一个这方面易懂点的代码,万分感谢。。。
就像"2005-06-09"怎么才能让它输出2005年6月9日呢,我用SimpleDateFormat 中的format了但不是太会用,那位大虾能给我一个这方面易懂点的代码。
我要的是转换任意的字符串,而不是当前时间,一楼的那个我知道,但就是不知道怎样把任意的字符串转换成时间格式的!

希望将日期输出成2005年6月9日,我们可以这么写:

SimpleDateFormat sdf =   new SimpleDateFormat( " yyyy年MM月dd日 " );

String str = sdf.format(parse( " 2005-06-09 00:00:00 " );

str便会依照我们设定的格式输出了。

用的API是SimpleDateFormat,它是属于java.text.SimpleDateFormat,所以请记得import进来!用法:SimpleDateFormat sdf =   new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " );这一行最重要,它确立了转换的格式,yyyy是完整的公元年,MM是月份,dd是日期。

扩展资料:

SimpleDateFormat的支持格式如下:

yy/MM/dd HH:mm:ss 如 '2017/12/12 17:55:00'

yy/MM/dd HH:mm:ss pm 如 '2017/12/12 17:55:00 pm'

yy-MM-dd HH:mm:ss 如 '2017-12-12 17:55:00' 

yy-MM-dd HH:mm:ss am 如 '2017-12-12 17:55:00 am' 


参考技术A

方法一:

public static void main(String[] args) throws Exception

Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2005-06-09"); 

String now = new SimpleDateFormat("yyyy年MM月dd日").format(date);

System.out.println(now);

输出结果:2005年06月09日

方法二:

public class bb

public static void main(String[] args)

// TODO Auto-generated method stub

SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhhmmss");

String dateString = "20071128175545";

try

Date date = df.parse(dateString);

System.out.println(df.format(date));

catch (Exception ex)

System.out.println(ex.getMessage());

扩展资料:

Java指定了一些可访问的修饰符如:private、protected、public,任何方法或变量都可以声明为public,Java可以从该类之外的地方访问。因为main方法是公共的,JVM就可以轻松的访问执行它。

在main里面args[]就是两个长度的数组:value1存在args[0]中,value2存在args[1]中。

args[0]存储的是命令,其后才是参数。

String args[ ]或者String[ ] args表示给主方法传一个字符串数组。

而args是一个字符串数组的变量名,不是关键字,是arguments的缩写,只是一个默认名,一般都习惯性照写。

例如:

class Example

public static void main(String args[ ])

System.out.println("This is a simple Java program.");

参考资料来源:百度百科—args[ ]

参考技术B

需要输出:2005年06月09日,那么需要注意的有两点:

第一,把你给定的日期格式的字符串转换为日期类型的值,要利用 new SimpleDateFormat("yyyy-MM-dd"); 注意这里的字符串值就可以任意给定了,但是转换时要注意日期格式的对应!!!

第二,再利用第一步得到的日期类型的值转换为你需要的值,需新建一个 new SimpleDateFormat("yyyy年MM月dd日");

详细代码如图:

参考技术C 先用parse转成date型,再用format转成string。

public static void main(String[] args) throws Exception
Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2005-06-09");
String now = new SimpleDateFormat("yyyy年MM月dd日").format(date);
System.out.println(now);
本回答被提问者和网友采纳
参考技术D import java.sql.Date;
Date date = Date.valueOf(str);
//str为目标字符串,如2006-10-05,或20061005,有些格式离谱的如:201315当然不能转化为日期了

然后按照一楼的操作,还有其他方法,多看看帮助文档

以上是关于在java中如何把字符串转换成时间格式?的主要内容,如果未能解决你的问题,请参考以下文章

java中怎么把Long转换成日期格式

Java中怎么把字符串转换成日期格式啊

java中如何将字符串转换成日期型

VB 如何把access中的字符串日期转换成日期格式并能计算日期

Java中如何把字符串转换成map

如何把int类型的毫秒数转换成时间格式