本篇文章给大家谈谈javadateeee,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、java中的Date怎么转换成YYYYMMDD形式的2、关于java中Date类的问题3、java怎么对该日期进行转换“星期五, 21 十二月 2012 08:19:04”4、JAVA的Date时间转换问题
java中的Date怎么转换成YYYYMMDD形式的
SimpleDateFormat inSdf = new SimpleDateFormat(“EEE, dd MMM yyyy HH:mm:ss z”, Locale.US);
创建SimpleDateFormat对象的时候使用带Locale的构造参数
因为你的星期和月份是用E文写的 所以parse回来的时候自然得用E文的Locale 用默认中文的Locale就会认不出来
btw 你用US的Locale的话 时区也会跑那里去 所以你应该给时区指定GMT+08:00 而不是光一个GMT
参考这段小代码
String s =”Thu, 02 Mar 2006 05:14:25 GMT+08:00″;
SimpleDateFormat inSdf = new SimpleDateFormat(“EEE, dd MMM yyyy HH:mm:ss z”, Locale.US);
SimpleDateFormat outSdf = new SimpleDateFormat(“EEE, dd MMM yyyy HH:mm:ss z”, Locale.CHINA);
try {
Date dateS = inSdf.parse(s);
System.out.println(outSdf.format(dateS));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//1、定义转换格式
SimpleDateFormat formatter = new SimpleDateFormat(“yyyy-MM-dd”);
SimpleDateFormat formatter2 = new SimpleDateFormat(“yyyyMMdd”);
//2、调用formatter2.parse(),将”19570323″转化为date类型 输出为:Sat Mar 23 00:00:00 GMT+08:00 1957
Date date = formatter2.parse(dateString);
//3、将date类型 (Sat Mar 23 00:00:00 GMT+08:00 1957)转化为String类型
//注意现在用的是formatter来做转换,输出为String类型的:”1957-03-23″
String dString = formatter.format(date);
//4、将String转化为date,需要注意java.sql.Date.valueOf()函数只能接受参数类型为yyyy-MM-dd类型的
Date data = java.sql.Date.valueOf(dString);
//5、将获取的date类型的出生日期赋值给javabean
personAudit.setBirthDate((emp.getHealthCarePrincipalPerson() != null
emp.getHealthCarePrincipalPerson().getBirthTime() != null)?data:null)。
关于java中Date类的问题
因为java的年是1900年开始计算的,你输入的107加上1900正好是2007了
这个是java源码的code,你可以看到,内部就实现了一个加1900
/**
* Allocates a codeDate/code object and initializes it so that
* it represents the instant at the start of the second specified
* by the codeyear/code, codemonth/code, codedate/code,
* codehrs/code, codemin/code, and codesec/code arguments,
* in the local time zone.
*
* @param year the year minus 1900.
* @param month the month between 0-11.
* @param date the day of the month between 1-31.
* @param hrs the hours between 0-23.
* @param min the minutes between 0-59.
* @param sec the seconds between 0-59.
* @see java.util.Calendar
* @deprecated As of JDK version 1.1,
* replaced by codeCalendar.set(year + 1900, month, date,
* hrs, min, sec)/code or codeGregorianCalendar(year + 1900,
* month, date, hrs, min, sec)/code.
*/
@Deprecated
public Date(int year, int month, int date, int hrs, int min, int sec) {
int y = year + 1900;
java怎么对该日期进行转换“星期五, 21 十二月 2012 08:19:04”
你的星期五, 21 十二月 2012 08:19:04这个字符串怎么来的,如果是你自己写的,恐怕你要自己定义方法转换。如果是java中Date的某个格式,那你可以用以下方法来转换。
String s = “星期五, 21 十二月 2012 08:19:04”;
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
Date date = sdf.parse(s);
前提是你的字符串星期五, 21 十二月 2012 08:19:04不是你自己想出来的,而是java中有这种格式的表示才行。
JAVA的Date时间转换问题
你这里出现了中英混合。
如果全是同一语言可以通过下边的方法。混合语言的方法没找到。
——————————————————————————–
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
public class Test {
public static void main(String[] args) throws Exception {
// Date d = new Date(“Sat Apr 14 02:47:52 格林尼治标准时间+0800 2012”);
String str = “Sat Apr 14 11:22:48 CST+0800 2012”;
SimpleDateFormat sdf = new SimpleDateFormat(
“EEE MMM dd HH:mm:ss zZ yyyy”, Locale.ENGLISH);
System.out.println(sdf.parse(str));
System.out.println(new Date());
}
}
其它的方法,就是flex中也有日期的格式化方法
格式化成yyyy-MM-dd这样的格式,就好处理多了。
即然你的flex端可以处理这样的字符串,那就向java端传递可处理的格式。
javadateeee的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、javadateeee的信息别忘了在本站进行查找喔。