packagedateformat;import java.util.*;/***
Title: 日期转换函数
*
Description: 有以下功能方法可以使用
* function 1:dateintstr(StrDate) :把字符串转为日期并初始化各部份
* StrDate:日期格式的字符串.
* function 2:dateint() : 初始化当前日期的各部份
* function 3:getnoncetime() : 取当前系统时间并精确到毫秒
* function 4:getymd() :取当前系统时间的年月日
* function 5:getTime() :取出当前系统的时分秒
* function 6:getFormatDate(Format) :格式化当前系统时间
* Format:支持以下格式:
* yyyy-MM-dd格式:年月日
*
* yyyy/MM/dd格式:年月日
*
* yyyyMMdd格式:年月日
*
* yyyy.mm.dd格式:年月日
*
* yyyy-MM格式:年月
*
* yyyy/mm格式:年月
*
* yyyymm格式:年月
*
* yyyy.mm格式:年月
*
* mm-dd格式:月日
*
* mm/dd格式:月日
*
* mmdd格式:月日
*
* mm.dd格式:月日
*
* yyyymmddhhmiss格式:当前年月日 时分秒
*
* yyyy-mm-dd hh:mi:ss格式:当前年月日 时分秒
*
* yyyy/mm/dd hh:mi:ss格式:当前年月日 时分秒
*
* yyyy.mm.dd hh:mi:ss格式:当前年月日 时分秒
*
* hh:mi:ss格式:当前时分秒
*
* yyyy格式:当前年份
*
* mm格式:当前月份
*
* dd格式:当月的当前的哪一天.
* function 7:getFormatDateS(Format,StrDate) :格式化当前系统时间
* Format :支持以下格式:以上;
* StrDate:日期字符串。
*
Copyright: Copyright (c) 2005
*
Company:
*@authornot attributable
*@version1.0
* 作者:WRL*/
public classmygetdate {int yyyy = 0;int mm = 0;int dd = 0;int hh = 0;int mi = 0;int ss = 0;int ms = 0;
String Smm= "", Sdd = "", Shh = "", Smi = "", Sss = "";
String sNowTime= "";publicmygetdate() {
}//*** Date Tdate =new Date("2005/06/7");//***--------------------初始化字符串转为日期----------------------
private voiddateintStr(String StrDate) {
StrDate= StrDate.replace('-','/');
StrDate= StrDate.replace('.','/');
Date Tdate= newDate(StrDate);
Calendar NowTime=Calendar.getInstance();
NowTime.setTime(Tdate);
yyyy=NowTime.get(NowTime.YEAR);
mm= NowTime.get(NowTime.MONTH) + 1;
dd=NowTime.get(NowTime.DAY_OF_MONTH);
hh=NowTime.get(NowTime.HOUR_OF_DAY);
mi=NowTime.get(NowTime.MINUTE);
ss=NowTime.get(NowTime.SECOND);
ms=NowTime.get(NowTime.MILLISECOND);
Smm= (mm < 10) ? "0" +mm : String.valueOf(mm);
Sdd= (dd < 10) ? "0" +dd : String.valueOf(dd);
Shh= (hh < 10) ? "0" +hh : String.valueOf(hh);
Smi= (mi < 10) ? "0" +mi : String.valueOf(mi);
Sss= (ss < 10) ? "0" +ss : String.valueOf(ss);
}//***--------------------初始化当前时间-----------------------
private voiddateint() {
Calendar NowTime=Calendar.getInstance();
yyyy=NowTime.get(NowTime.YEAR);
mm= NowTime.get(NowTime.MONTH) + 1;
dd=NowTime.get(NowTime.DAY_OF_MONTH);
hh=NowTime.get(NowTime.HOUR_OF_DAY);
mi=NowTime.get(NowTime.MINUTE);
ss=NowTime.get(NowTime.SECOND);
ms=NowTime.get(NowTime.MILLISECOND);
Smm= (mm < 10) ? "0" +mm : String.valueOf(mm);
Sdd= (dd < 10) ? "0" +dd : String.valueOf(dd);
Shh= (hh < 10) ? "0" +hh : String.valueOf(hh);
Smi= (mi < 10) ? "0" +mi : String.valueOf(mi);
Sss= (ss < 10) ? "0" +ss : String.valueOf(ss);
}//***-----------------取出当前时间---------------------------
publicString getnoncetime() {
dateint();//初始化时间控件.
sNowTime = yyyy + "-" + Smm + "-" + Sdd + " " + Shh + ":" + Smi + ":" +Sss+
"." +ms;returnsNowTime;
}//***--------------------取出当前时间的年月日------------------
publicString getymd() {
dateint();//初始化时间控件.
sNowTime = yyyy + "-" + Smm + "-" +Sdd;returnsNowTime;
}//***--------------------取出当前几点几分几秒-------------------
publicString getTime() {
dateint();//初始化时间控件.
sNowTime = Shh + ":" + Smi + ":" +Sss;returnsNowTime;
}//***按格式返回当前时间的任意部份--------------------------------
publicString getFormatDate(String Format) {
dateint();//初始化时间控件.
Format =Format.trim().toLowerCase();//******年月日格式----------------------------------------------
if (Format.equals("yyyy-mm-dd")) {//yyyy-MM-dd格式.
return yyyy + "-" + Smm + "-" +Sdd;
}if (Format.equals("yyyy/mm/dd")) {//yyyy/MM/dd格式.
return yyyy + "/" + Smm + "/" +Sdd;
}if (Format.equals("yyyymmdd")) {//yyyyMMdd格式.
return yyyy + Smm +Sdd;
}if (Format.equals("yyyy.mm.dd")) {//yyyy.mm.dd格式.
return yyyy + "." + Smm + "." +Sdd;
}//******年月格式----------------------------------------------
if (Format.equals("yyyy-mm")) {//yyyy-MM格式.
return yyyy + "-" +Smm;
}if (Format.equals("yyyy/mm")) {//yyyy/mm格式.
return yyyy + "/" +Smm;
}if (Format.equals("yyyymm")) {//yyyymm格式.
return yyyy +Smm;
}if (Format.equals("yyyy.mm")) {//yyyy.mm格式.
return yyyy + "." +Smm;
}//******月日格式----------------------------------------------
if (Format.equals("mm-dd")) {//mm-dd格式.
return Smm + "-" +Sdd;
}if (Format.equals("mm/dd")) {//mm/dd格式.
return Smm + "/" +Sdd;
}if (Format.equals("mmdd")) {//mmdd格式.
return Smm +Sdd;
}if (Format.equals("mm.dd")) {//mm.dd格式.
return Smm + "." +Sdd;
}//******年月日时分秒格式-------------------------------------------
if (Format.equals("yyyymmddhhmiss")) {//yyyymmddhhmiss格式.
return yyyy + Smm + Sdd + Shh + Smi +Sss;
}if (Format.equals("yyyy-mm-dd hh:mi:ss")) {//yyyy-mm-dd hh:mi:ss格式.
return yyyy + "-" + Smm + "-" + Sdd + " " + Shh + ":" + Smi + ":" +Sss;
}if (Format.equals("yyyy/mm/dd hh:mi:ss")) {//yyyy/mm/dd hh:mi:ss格式.
return yyyy + "/" + Smm + "/" + Sdd + " " + Shh + ":" + Smi + ":" +Sss;
}if (Format.equals("yyyy.mm.dd hh:mi:ss")) {//yyyy.mm.dd hh:mi:ss格式.
return yyyy + "." + Smm + "." + Sdd + " " + Shh + ":" + Smi + ":" +Sss;
}//******时分秒格式----------------------------------------------
if (Format.equals("hh:mi:ss")) {//hh:mi:ss格式.
return Shh + ":" + Smi + ":" +Sss;
}//*****单独取年或月或日格式----------------------------------------------
if (Format.equals("yyyy")) {//yyyy格式.
returnString.valueOf(yyyy);
}if (Format.equals("mm")) {//mm格式.
returnString.valueOf(Smm);
}if (Format.equals("dd")) {//dd格式.
returnString.valueOf(Sdd);
}return "你的格式不对!";
}//***将字符串日期按格式返回任意部份--------------------------------
publicString getFormatDateS(String Format, String StrDate) {
dateintStr(StrDate);//初始化时间控件.
Format =Format.trim().toLowerCase();//******年月日格式----------------------------------------------
if (Format.equals("yyyy-mm-dd")) {//yyyy-MM-dd格式.
return yyyy + "-" + Smm + "-" +Sdd;
}if (Format.equals("yyyy/mm/dd")) {//yyyy/MM/dd格式.
return yyyy + "/" + Smm + "/" +Sdd;
}if (Format.equals("yyyymmdd")) {//yyyyMMdd格式.
return yyyy + Smm +Sdd;
}if (Format.equals("yyyy.mm.dd")) {//yyyy.mm.dd格式.
return yyyy + "." + Smm + "." +Sdd;
}//******年月格式----------------------------------------------
if (Format.equals("yyyy-mm")) {//yyyy-MM格式.
return yyyy + "-" +Smm;
}if (Format.equals("yyyy/mm")) {//yyyy/mm格式.
return yyyy + "/" +Smm;
}if (Format.equals("yyyymm")) {//yyyymm格式.
return yyyy +Smm;
}if (Format.equals("yyyy.mm")) {//yyyy.mm格式.
return yyyy + "." +Smm;
}//******月日格式----------------------------------------------
if (Format.equals("mm-dd")) {//mm-dd格式.
return Smm + "-" +Sdd;
}if (Format.equals("mm/dd")) {//mm/dd格式.
return Smm + "/" +Sdd;
}if (Format.equals("mmdd")) {//mmdd格式.
return Smm +Sdd;
}if (Format.equals("mm.dd")) {//mm.dd格式.
return Smm + "." +Sdd;
}//******年月日时分秒格式-------------------------------------------
if (Format.equals("yyyymmddhhmiss")) {//yyyymmddhhmiss格式.
return yyyy + Smm + Sdd + Shh + Smi +Sss;
}if (Format.equals("yyyy-mm-dd hh:mi:ss")) {//yyyy-mm-dd hh:mi:ss格式.
return yyyy + "-" + Smm + "-" + Sdd + " " + Shh + ":" + Smi + ":" +Sss;
}if (Format.equals("yyyy/mm/dd hh:mi:ss")) {//yyyy/mm/dd hh:mi:ss格式.
return yyyy + "/" + Smm + "/" + Sdd + " " + Shh + ":" + Smi + ":" +Sss;
}if (Format.equals("yyyy.mm.dd hh:mi:ss")) {//yyyy.mm.dd hh:mi:ss格式.
return yyyy + "." + Smm + "." + Sdd + " " + Shh + ":" + Smi + ":" +Sss;
}//******时分秒格式----------------------------------------------
if (Format.equals("hh:mi:ss")) {//hh:mi:ss格式.
return Shh + ":" + Smi + ":" +Sss;
}//*****单独取年或月或日格式----------------------------------------------
if (Format.equals("yyyy")) {//yyyy格式.
returnString.valueOf(yyyy);
}if (Format.equals("mm")) {//mm格式.
returnString.valueOf(Smm);
}if (Format.equals("dd")) {//mm格式.
returnString.valueOf(Sdd);
}return "你的格式不对!";
}public static voidmain(String[] args) {
mygetdate mygetdate1= newmygetdate();
}
}
================demo=======================
packagedateformat;import java.awt.*;import java.awt.event.*;import javax.swing.*;importjava.util.Date;importdateformat.mygetdate;/***
Title:
*
Description:
*
Copyright: Copyright (c) 2005
*
Company:
*@authornot attributable
*@version1.0*/
public classDateFormextendsJFrame {
JPanel contentPane;
JMenuBar jMenuBar1= newJMenuBar();
JMenu jMenuFile= newJMenu();
JMenuItem jMenuFileExit= newJMenuItem();
JMenu jMenuHelp= newJMenu();
JMenuItem jMenuHelpAbout= newJMenuItem();
JToolBar jToolBar= newJToolBar();
JButton jButton1= newJButton();
JButton jButton2= newJButton();
JButton jButton3= newJButton();
ImageIcon image1;
ImageIcon image2;
ImageIcon image3;
JFormattedTextField FormDate= newJFormattedTextField();
JButton jButton4= newJButton();
JButton jButton5= newJButton();
JTextField Format= newJTextField();
JTextField Tresult= newJTextField();
JLabel jLabel1= newJLabel();
JLabel jLabel2= newJLabel();
JButton jButton6= newJButton();
JButton jButton7= newJButton();
JButton testbtn= newJButton();
JTextField JDateStr= newJTextField();
JLabel jLabel3= newJLabel();//Construct the frame
publicDateForm() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);try{
jbInit();
}catch(Exception e) {
e.printStackTrace();
}
}//Component initialization
private void jbInit() throwsException {
image1= new ImageIcon(dateformat.DateForm.class.getResource("openFile.png"));
image2= new ImageIcon(dateformat.DateForm.class.getResource("closeFile.png"));
image3= new ImageIcon(dateformat.DateForm.class.getResource("help.png"));
contentPane= (JPanel)this.getContentPane();
contentPane.setLayout(null);this.setSize(new Dimension(400, 300));this.setTitle("Frame Title");
jMenuFile.setText("File");
jMenuFileExit.setText("Exit");
jMenuFileExit.addActionListener(new DateForm_jMenuFileExit_ActionAdapter(this));
jMenuHelp.setText("Help");
jMenuHelpAbout.setText("About");
jMenuHelpAbout.addActionListener(new DateForm_jMenuHelpAbout_ActionAdapter(this));
jButton1.setIcon(image1);
jButton1.setToolTipText("Open File");
jButton2.setIcon(image2);
jButton2.setToolTipText("Close File");
jButton3.setIcon(image3);
jButton3.setToolTipText("Help");
jToolBar.setBounds(new Rectangle(0, 0, 400, 29));
FormDate.setText("");
FormDate.setBounds(new Rectangle(11, 50, 117, 24));
jButton4.setBounds(new Rectangle(23, 201, 83, 26));
jButton4.setText("取出时间");
jButton4.addActionListener(new DateForm_jButton4_actionAdapter(this));
jButton5.setBounds(new Rectangle(121, 202, 93, 24));
jButton5.setText("取当前时间");
jButton5.addActionListener(new DateForm_jButton5_actionAdapter(this));
Format.setText("");
Format.setBounds(new Rectangle(200, 50, 144, 25));
Tresult.setText("");
Tresult.setBounds(new Rectangle(201, 115, 143, 23));
jLabel1.setText("日期格式");
jLabel1.setBounds(new Rectangle(140, 53, 60, 25));
jLabel2.setText("返回结果");
jLabel2.setBounds(new Rectangle(139, 117, 60, 23));
jButton6.setBounds(new Rectangle(245, 201, 77, 23));
jButton6.setText("确定");
jButton6.addActionListener(new DateForm_jButton6_actionAdapter(this));
testbtn.setBounds(new Rectangle(29, 163, 108, 21));
testbtn.setText("字符转为日期");
testbtn.addActionListener(new DateForm_testbtn_actionAdapter(this));
testbtn.setBounds(new Rectangle(30, 163, 267, 25));
testbtn.setText("字符串转日期");
JDateStr.setText("");
JDateStr.setBounds(new Rectangle(199, 84, 147, 23));
jLabel3.setText("要转换的日期");
jLabel3.setBounds(new Rectangle(119, 83, 78, 24));
jToolBar.add(jButton1);
jToolBar.add(jButton2);
jToolBar.add(jButton3);
contentPane.add(Tresult,null);
contentPane.add(jLabel2,null);
contentPane.add(JDateStr,null);
contentPane.add(testbtn,null);
contentPane.add(testbtn,null);
contentPane.add(Format,null);
contentPane.add(jLabel1,null);
contentPane.add(jButton6,null);
contentPane.add(jButton5,null);
contentPane.add(jButton4,null);
contentPane.add(FormDate,null);
jMenuFile.add(jMenuFileExit);
jMenuHelp.add(jMenuHelpAbout);
jMenuBar1.add(jMenuFile);
jMenuBar1.add(jMenuHelp);this.setJMenuBar(jMenuBar1);
contentPane.add(jToolBar,null);
contentPane.add(jLabel3,null);
}//File | Exit action performed
public voidjMenuFileExit_actionPerformed(ActionEvent e) {
System.exit(0);
}//Help | About action performed
public voidjMenuHelpAbout_actionPerformed(ActionEvent e) {
}//Overridden so we can exit when window is closed
protected voidprocessWindowEvent(WindowEvent e) {super.processWindowEvent(e);if (e.getID() ==WindowEvent.WINDOW_CLOSING) {
jMenuFileExit_actionPerformed(null);
}
}voidjButton4_actionPerformed(ActionEvent e) {
Date nowTime= newDate();int yyyy = 1900+nowTime.getYear();int mm = nowTime.getMonth()+1;int dd =nowTime.getDate();int hh =nowTime.getHours();int mi=nowTime.getMinutes();int ss=nowTime.getSeconds();
String snowTime=yyyy+"-"+mm+"-"+dd+" "+hh+":"+mi+":"+ss;
FormDate.setText(snowTime);
}voidjButton5_actionPerformed(ActionEvent e) {
mygetdate noncetime=newmygetdate();
FormDate.setText(noncetime.getnoncetime());
}voidjButton6_actionPerformed(ActionEvent e) {
mygetdate noncetime=newmygetdate();
String Formatstr=noncetime.getFormatDate(Format.getText());
Tresult.setText(Formatstr);
}voidtestbtn_actionPerformed(ActionEvent e) {
Date Tdate=new Date("2005/06/7 01:02:03");
testbtn.setText(Tdate.toString()+"ss");
mygetdate noncetime=newmygetdate();
String Formatstr=noncetime.getFormatDateS(Format.getText(),JDateStr.getText());
Tresult.setText(Formatstr);
}
}classDateForm_jMenuFileExit_ActionAdapterimplementsActionListener {
DateForm adaptee;
DateForm_jMenuFileExit_ActionAdapter(DateForm adaptee) {this.adaptee =adaptee;
}public voidactionPerformed(ActionEvent e) {
adaptee.jMenuFileExit_actionPerformed(e);
}
}classDateForm_jMenuHelpAbout_ActionAdapterimplementsActionListener {
DateForm adaptee;
DateForm_jMenuHelpAbout_ActionAdapter(DateForm adaptee) {this.adaptee =adaptee;
}public voidactionPerformed(ActionEvent e) {
adaptee.jMenuHelpAbout_actionPerformed(e);
}
}classDateForm_jButton4_actionAdapterimplementsjava.awt.event.ActionListener {
DateForm adaptee;
DateForm_jButton4_actionAdapter(DateForm adaptee) {this.adaptee =adaptee;
}public voidactionPerformed(ActionEvent e) {
adaptee.jButton4_actionPerformed(e);
}
}class DateForm_jButton5_actionAdapter implementsjava.awt.event.ActionListener {
DateForm adaptee;
DateForm_jButton5_actionAdapter(DateForm adaptee) {this.adaptee =adaptee;
}public voidactionPerformed(ActionEvent e) {
adaptee.jButton5_actionPerformed(e);
}
}class DateForm_jButton6_actionAdapter implementsjava.awt.event.ActionListener {
DateForm adaptee;
DateForm_jButton6_actionAdapter(DateForm adaptee) {this.adaptee =adaptee;
}public voidactionPerformed(ActionEvent e) {
adaptee.jButton6_actionPerformed(e);
}
}class DateForm_testbtn_actionAdapter implementsjava.awt.event.ActionListener {
DateForm adaptee;
DateForm_testbtn_actionAdapter(DateForm adaptee) {this.adaptee =adaptee;
}public voidactionPerformed(ActionEvent e) {
adaptee.testbtn_actionPerformed(e);
}
}