java dataformat 的疑问

来源:百度知道 编辑:UC知道 时间:2024/06/09 20:34:20
代码如下:
<%@ page language="java" import="java.text.*,java.util.*" pageEncoding="GBK"%>
<%@ page import="kira.*" %>
<%
//String textDate = request.getParameter("2009-5-27");
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date fDate1 = df.parse("2009-05-27");
out.print(fDate1);
%>
<html>
</html>

为何不是按format格式输出
而是输出的:Wed May 27 00:00:00 CST 2009 呢

你格式化时间的时候错了~~
你应该去仔细看看api
我先给你一个简单的示例,你看看就明白了:
String time=new SimpleDateFormat("yyyy/MM/dd/hh/mm/ss").format(new Date());

out.print(fDate1.toLocaleString());//改这里

String str = df.format(new Date(System.currentTimeMillis()));
out.print(str);

1.Date 的toString()方法描述如下
toString
public String toString()把此 Date 对象转换为以下形式的 String:
dow mon dd hh:mm:ss zzz yyyy其中:
dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。
mon 是月份 (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)。
dd 是一月中的某一天(01 至 31),显示为两位十进制数。
hh 是一天中的小时(00 至 23),显示为两位十进制数。
mm 是小时中的分钟(00 至 59),显示为两位十进制数。
ss 是分钟中的秒数(00 至 61),显示为两位十进制数。
zzz 是时区(并可以反映夏令时)。标准时区缩写包括方法 parse 识别的时区缩写。如果不提供时区信息,则 zzz 为空,即根本不包括任何字符。
yyyy 是年份,显示为 4 位十进制数。

覆盖:
类 Object 中的 toString
返回:
此日期的字符串表示形式。
另请参见:
toLocaleString(), toGMTString()
所以输出的结果不是你想要的
2.建议在输出日期的时候格式化
out.print(df.format(fDa