1

レコードをアップロードするときにタイムスタンプを挿入する MySQL データベースがあるので、入力されるのは 2013-02-02 16:59:29 のようなものです。それを10日前のようなものに変換するJavaの方法はありますか?

4

3 に答える 3

10

データベースから Java に datetime 値を読み取ったと仮定します。

Date date; // read from database
int days = TimeUnit.MILLISECONDS.toDays(
     System.currentTimeMillis() - date.getTime());

その後、好きなようにフォーマットできます。

于 2013-02-13T02:15:26.983 に答える
2

結果セットを使用してmysqlから時間を取得し、時間データを以下のメソッドに渡します

    public static void main(String[] args) {                

     long timStampFromMysql = rs.getTimestamp("time");// Fetch time from mysql
                Calendar cal =  Calendar.getInstance();
                cal.setTimeInMillis(convertTime(timStampFromMysql , 15));
                System.out.println(cal);

            }

            public static long convertTime(long timeInMillies, int days)
            {

                 Calendar calendar = Calendar.getInstance();
                    calendar.setTimeInMillis(timeInMillies);
                    calendar.add(Calendar.DAY_OF_YEAR, days);

                    return calendar.getTimeInMillis();



            }
于 2013-02-13T03:45:31.740 に答える