2013-01-09 82 views
0

在Java中正確設置日期我現在用的是JCalendar從這裏:http://www.toedter.com/en/jcalendar/ 我已經使用了JDateChooser設置的形式和進口日期爲SqLite格式yyyy-MM-dd。 WhenI嘗試從數據庫中使用此代碼檢索相同的格式yyyy-MM-dd日期:JCalendar - 使用正確的格式

Date date = rs.getDate(10); 
      fieldClose.setDate(date); //displays 01-Jan-1970 - I want (2013-01-08), one that is similar in database. 

我已經看過計算器,還有一些類似的職位存在,但無法在格式yyyy-MM-dd和審議jCalender方面表現出的建議和SQLite,所以我不得不發表這一點。任何想法如何實現與數據庫類似的日期,以相同格式插入並且具有相同類型。

我剛纔試過這樣:

String date =rs.getString(10); 
       ((JTextField)fieldClose.getDateEditor().getUiComponent()).setText(date); 

回報:

2013年5月22日//進來紅線,意爲jDatechooser犯規承認它

+0

有兩種方法需要設置的SimpleDateFormat或setLocale的,兩者都在此Java實現擺動JCalendar – mKorbel

回答

1

使用的SimpleDateFormat,嘗試這個例子

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
    Date date=null; 
    try{ 
     date=sdf.parse(rs.getString(10)); 
    } catch (ParseException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 
    fieldClose.setDate(date); 
0
  1. 您可以在java
  2. 中使用SimpleDateFormat,或者在Mysql SELECT查詢中使用DATE_FORMAT('ColumnName',「Date Pattern」)。
0

您可以使用String.format。讓我來幫你的代碼

Date o = jDateChooser1.getDate(); //Import java.util not java.sql 
String x = String.format("%1$ty-%1$tm-%1$td",o);