1。文字列と日付(java.util.date)は互いに転送されます
1.1文字列 - >日付
文字列datestr = "// ::";日付date = new date(); //形式の形式は、日付文字列dateformat sdf = new SimpledateFormat( "yyyy/mm/dd HH:mm:ss")の形式と一致する必要があることに注意してください。 try {date = sdf.parse(datestr); system.out.println(date.toString()); } catch(Exception e){e.printstacktrace(); } string datestr = "2010/05/04 12:34:23";日付date = new date(); //形式の形式は、日付文字列dateformat sdf = new SimpledateFormat( "yyyy/mm/dd HH:mm:ss")の形式と一致する必要があることに注意してください。 try {date = sdf.parse(datestr); system.out.println(date.toString()); } catch(Exception e){e.printstacktrace(); } 1.2日付 - >文字列
日付を文字列に変換すると、任意の変換形式を設定できます
文字列datestr = "";日付date = new date(); //形式の形式は、任意に日付FORMAT sdf = new SimpledateFormat( "yyyy/mm/dd HH:mm:ss"); dateformat sdf = new SimpledateFormat( "yyyy-mm-dd hh/mm/ss"); try {datestr = sdf.format(date); System.out.println(datestr); datestr = sdf.format(date); System.out.println(datestr); } catch(Exception e){e.printstacktrace(); }文字列datestr = "";日付date = new date(); //形式の形式は、任意に日付FORMAT sdf = new SimpledateFormat( "yyyy/mm/dd HH:mm:ss"); dateformat sdf2 = new simpledateFormat( "yyyy-mm-dd hh/mm/ss"); try {datestr = sdf.format(date); System.out.println(datestr); datestr = sdf2.format(date); System.out.println(datestr); } catch(Exception e){e.printstacktrace(); } 2。文字列とタイムスタンプが一緒に転送されます
2.1文字列 - >タイムスタンプ
TimestampのValueof()メソッドを使用します
タイムスタンプTS =新しいタイムスタンプ(System.CurrentTimemillis()); string tsstr = " - ::"; try {ts = timestamp.valueof(tsstr); System.out.println(ts); } catch(Exception e){e.printstacktrace(); } TimestAmp TS = new Timestamp(System.CurrentTimemillis()); string tsstr = "2011-05-09 11:49:45"; try {ts = timestamp.valueof(tsstr); System.out.println(ts); } catch(Exception e){e.printstacktrace(); }注:文字列のタイプは、次の形式でなければなりません:yyyy-mm-dd hh:mm:ss [.f ...]、括弧がオプションを示すため、エラーが報告されます! ! !
文字列が別の形式である場合、文字列を再格付けして再編成することを検討できます~~
2.2タイムスタンプ - >文字列
TimestampのtoString()メソッドを使用するか、日付を借ります
タイムスタンプTS =新しいタイムスタンプ(System.CurrentTimemillis());文字列tsstr = ""; dateformat sdf = new simpledateFormat( "yyyy/mm/dd hh:mm:ss"); try {//方法1 tsstr = sdf.format(ts); System.out.println(TSSTR); //方法2 TSSTR = Ts.ToString(); System.out.println(TSSTR); } catch(Exception e){e.printstacktrace(); } TimestAmp TS = new Timestamp(System.CurrentTimemillis());文字列tsstr = ""; dateformat sdf = new simpledateFormat( "yyyy/mm/dd hh:mm:ss"); try {//方法1 tsstr = sdf.format(ts); System.out.println(TSSTR); //方法2 TSSTR = Ts.ToString(); System.out.println(TSSTR); } catch(Exception e){e.printstacktrace(); }方法1の利点は、文字列の形を柔軟に設定できることです。
3。日付(java.util.date)とタイムスタンプが一緒に転送されます
ステートメント:APIを見ると、その日付とタイムスタが親子関係であることがわかります
3.1タイムスタンプ - >日付
タイムスタンプTS =新しいタイムスタンプ(System.CurrentTimemillis());日付date = new date(); {date = ts; System.out.println(date); } catch(Exception e){e.printstacktrace(); } TimestAmp TS = new Timestamp(System.CurrentTimemillis());日付date = new date(); {date = ts; System.out.println(date); } catch(Exception e){e.printstacktrace(); }それは非常に簡単ですが、現時点では、日付オブジェクトによって指摘されたエンティティはタイムスタンプです。つまり、日付には日付クラスの方法がありますが、上書き方法の実行エンティティはタイムスタンプにあります。
3.2日付 - >タイムスタンプ
親クラスは子供クラスに直接変換することはできません。中央の文字列を使用できます~~~~
java.sql.dateは日付データのみを保存しますが、時刻データではありません//時間データはraspedstatement.setdate(1、new java.sql.date(date.gettime()); //日付と時刻を含む完全なデータを取得する場合は、java.util.date d = resultset.getTimestamp(1);
自分で補うなら、これは事実です:
データベースを保存するときは、java.util.dateタイプを受信し、gettime()メソッドを使用して日付オブジェクトを表す長い値を取得し、この長い値を使用してタイムスタンプオブジェクトを構築してデータベースに保存します。
ストレージデータベースから取得するときは、最初にタイムスタンプを取得し、GetTime()メソッドを使用して長い値を取得し、この長い値を使用してJava.util.dateオブジェクトを構築して、この日付オブジェクトで動作できるようにします。新しいsimpletimeformat( "yyyyy-mm-dd hh:mm:ss")。format()など