public static void main(String[] args) { Date dd = new Date(); System.out.println(new SimpleDateFormat("yyyy-MM-dd").format(dd)); }非得让我动手。 这个没难度 自己得加强看代码呀 parse是给个字符串 返回Date 主要作用是自己给个字符串生成时间 字符串可以是"2010-03-23" 但new Date().toString(); 传进去肯定报错的。 format 是给个Date 返回字符串 主要是格式化日期类型 首先要明白自己要什么样的功能,然后用对应的函数。
简单点说:我就想知道“Mon Dec 31 00:00:00 CST 2012” 这个格式的字符串怎么转成日期。你说的方法不好使。我当然知道找对应的函数,没找到才来问的。
哦,我看错了。 Mon Dec 31 00:00:00 CST 2012 这个不知道哪里得到的 既然要用yyyy-mm-dd这种格式的 为什么不在哪里格式化?
Date d = new Date("Mon Dec 31 00:00:00 CST 2012"); String f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d); System.out.println(f);
String s = "Tue Mar 23 16:49:40 CST 2010"; Date f = new Date(); try { f = new SimpleDateFormat().parse(s); } catch (ParseException e) { e.printStackTrace(); } String str = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(f); System.out.println(str);
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale;public class Test { public static void main(String[] args) { String str = "Mon Dec 31 00:00:00 CST 2012"; Date date = parse(str, "EEE MMM dd HH:mm:ss zzz yyyy", Locale.US); System.out.printf("%tF %<tT%n", date); } public static Date parse(String str, String pattern, Locale locale) { if(str == null || pattern == null) { return null; } try { return new SimpleDateFormat(pattern, locale).parse(str); } catch (ParseException e) { e.printStackTrace(); } return null; } public static String format(Date date, String pattern, Locale locale) { if(date == null || pattern == null) { return null; } return new SimpleDateFormat(pattern, locale).format(date); } }
那就怪事了 我的JDK 1.4的版本都能运行得到正确的结果 !
支持一下13楼 Stirng a="Mon Dec 31 00:00:00 CST 2012"; Date d = new Date(a); String f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d); System.out.println(f);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
return simpleDateFormat.format(date);
}
。这个代码 你直接去运行?
那我就无语了。
主要是看里面用了啥
这个是我程序的一部分,我懒得写就copy过来了。。
* @param args
* @throws ParseException
*/
public static void main(String[] args) {
String dd = new Date().toString();
try {
System.out.println(new SimpleDateFormat("yyyy-MM-dd").parse(dd));
} catch (ParseException e) {
e.printStackTrace();
} }这样不好使,你试试
Date dd = new Date();
System.out.println(new SimpleDateFormat("yyyy-MM-dd").format(dd));
}非得让我动手。
这个没难度
自己得加强看代码呀
parse是给个字符串 返回Date 主要作用是自己给个字符串生成时间 字符串可以是"2010-03-23" 但new Date().toString(); 传进去肯定报错的。
format 是给个Date 返回字符串 主要是格式化日期类型
首先要明白自己要什么样的功能,然后用对应的函数。
Mon Dec 31 00:00:00 CST 2012 这个不知道哪里得到的 既然要用yyyy-mm-dd这种格式的
为什么不在哪里格式化?
String f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);
System.out.println(f);
Date f = new Date();
try {
f = new SimpleDateFormat().parse(s);
} catch (ParseException e) {
e.printStackTrace();
}
String str = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(f);
System.out.println(str);
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;public class Test { public static void main(String[] args) {
String str = "Mon Dec 31 00:00:00 CST 2012";
Date date = parse(str, "EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
System.out.printf("%tF %<tT%n", date);
} public static Date parse(String str, String pattern, Locale locale) {
if(str == null || pattern == null) {
return null;
}
try {
return new SimpleDateFormat(pattern, locale).parse(str);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
} public static String format(Date date, String pattern, Locale locale) {
if(date == null || pattern == null) {
return null;
}
return new SimpleDateFormat(pattern, locale).format(date);
}
}
Stirng a="Mon Dec 31 00:00:00 CST 2012";
Date d = new Date(a);
String f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);
System.out.println(f);