java中怎么格式化日期??
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中怎么格式化日期??相关的知识,希望对你有一定的参考价值。
sqlserver数据库中存放的是DateTime字段//2013-12-19 15:05:05:0000
java 如何把它格式化成2013-12-19 15:05:05
java从数据库中读这个字段时是getDate 还是getTime ??
java有没有类似C# 个DateTime??
你可以用String类的format方法,例如: System.out.println(String.format("%ty年%<tm月%<td日",date));下面是一个完整的例子。
public class FormatDateTestpublic static void main(String[] args)
Date date = new Date(System.currentTimeMillis());
System.out.println(String.format("%ty年%<tm月%<td日",date));
System.out.println(String.format("%tY年%<tm月%<td日",date));
System.out.println(String.format("%tY年%<tm月%<td日%<tH时%<tM分%<tS秒",date));
%ty是格式化年,%tm是格式化年,%td是格式化天,%tH格式化发时,%tM格式化分,%tS格式化秒。另外%tY是把年格式化为四位形式,如1999,而不是99。%tI是把时格式化为12小时制。格式化字符串中的<是表示格式化同一个日期,当然你也可以这么写: System.out.println(String.format("%ty年%tm月%td日",date,date,date));
在java中 日期的格式化 一般使用 SimpleDateFormat 类格式化日期.
比如 想要得到 2015-06-19 00:00:00 这样格式的字符串日期
String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
将当前日期格式化为上面的行驶 通过括号中的 "yyyy-MM-dd HH:mm:ss" 来控制格式化之后的数据行驶"yyyy/MM/dd HH:mm:ss" 就得到 2015/06/19 00:00:00
字符串转化成日期类型:
Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2015-06-19 00:00:00");
"yyyy-MM-dd HH:mm:ss" 应该和后面的参数"2015-06-19 00:00:00" 保持一致的格式 参考技术B Timestamp
java.util.Date 参考技术C 例子:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date currentTime = new Date();
String dateString = format.format(currentTime);本回答被提问者采纳
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'
方法一:
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中怎么格式化日期??的主要内容,如果未能解决你的问题,请参考以下文章