java 获取当前时间后,怎么计算得到延迟3小时候的时间 java 1.获取当前时间,2.怎么计算得到延迟3小时候的时间,换算的过程 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没太明白。你是想在1、的结果上加三小时?还是你的系统有时差需要NTP? Calendar calendar = Calendar.getInstance();calendar.roll(Calendar.HOUR_OF_DAY,3);Date date = calendar.getTime(); Calendar calendar = Calendar.getInstance();Date now = calendar.getTime(); //or new Date(); Calendar calendar = Calendar.getInstance(); Date now = calendar.getTime(); calendar.add(Calendar.HOUR_OF_DAY,3); Date nextDate=calendar.getTime(); 用roll不会改变前一个大字段,也就是说不会改变天的字段。如果是晚上11点的时间的话,应该得到的是第二天的时间。所以用add比较合适。! 我记得会改变的啊~Calendar cal = Calendar.getInstance();System.out.println(cal.getTime());cal.set(Calendar.HOUR_OF_DAY, 24);cal.set(Calendar.MINUTE, 60);System.out.println(cal.getTime());Wed Sep 01 15:01:44 CST 2010Thu Sep 02 01:00:44 CST 2010 public static void main(String[] args) { Calendar cal = Calendar.getInstance(); cal.add(Calendar.HOUR,3); String threeHoursLater = new SimpleDateFormat( "HH:mm:ss").format(cal.getTime()).replaceAll(" ", ""); System.out.println(threeHoursLater); } /** * 日期加减天数、小时、分钟 * @param dateYMDHMS - 日期字符串(格式为format指定的格式) * @param format - 指定dateYMDHMS的日期格式 * @param unit - 日期加减的单位(可以是天数、小时、分钟) * @param amount - 要加减的数量 * @return 返回加减后的日期(格式为format指定的格式) */ public static String addDate(String dateYMDHMS, String format, String unit, int amount) { try { Calendar calendar = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat(format); calendar.setTime(sdf.parse(dateYMDHMS)); if (unit.equals("day") || unit.equals("days")) { calendar.add(Calendar.DAY_OF_YEAR, amount); } else if (unit.equals("hour") || unit.equals("hours")) { calendar.add(Calendar.HOUR_OF_DAY, amount); } else if (unit.equals("minute") || unit.equals("minutes")) { calendar.add(Calendar.MINUTE, amount); } return sdf.format(calendar.getTime()); } catch (Exception e) { e.printStackTrace(); return ""; } } AWT和SWING讨论 JAVA JFileChooser 问题 j2se中有直接读取 html文件的API么? Access连接数据库 ??? 弱弱地问一声,JAVA中的线程有必要花很多时间来掌握吗? 如何用synth在程序中动态改变皮肤 菜鸟问:如何指定JTree的一些节点可编辑(editable)而一些不好编辑 Error:500是什么问题? 救命啊有没有人会呀,Applet里面调用打印机怎么设权限 对话框里,如何将焦点设到指定的按钮 java 网络编程 jcreator环境下的事件监听有问题,帮忙查错
calendar.roll(Calendar.HOUR_OF_DAY,3);
Date date = calendar.getTime();
Date now = calendar.getTime(); //or new Date();
Calendar calendar = Calendar.getInstance();
Date now = calendar.getTime();
calendar.add(Calendar.HOUR_OF_DAY,3);
Date nextDate=calendar.getTime();
如果是晚上11点的时间的话,应该得到的是第二天的时间。
所以用add比较合适。!
System.out.println(cal.getTime());
cal.set(Calendar.HOUR_OF_DAY, 24);
cal.set(Calendar.MINUTE, 60);
System.out.println(cal.getTime());Wed Sep 01 15:01:44 CST 2010
Thu Sep 02 01:00:44 CST 2010
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR,3);
String threeHoursLater = new SimpleDateFormat( "HH:mm:ss").format(cal.getTime()).replaceAll(" ", "");
System.out.println(threeHoursLater);
}
* 日期加减天数、小时、分钟
* @param dateYMDHMS - 日期字符串(格式为format指定的格式)
* @param format - 指定dateYMDHMS的日期格式
* @param unit - 日期加减的单位(可以是天数、小时、分钟)
* @param amount - 要加减的数量
* @return 返回加减后的日期(格式为format指定的格式)
*/
public static String addDate(String dateYMDHMS, String format, String unit, int amount) {
try { Calendar calendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(format);
calendar.setTime(sdf.parse(dateYMDHMS));
if (unit.equals("day") || unit.equals("days")) {
calendar.add(Calendar.DAY_OF_YEAR, amount);
} else if (unit.equals("hour") || unit.equals("hours")) {
calendar.add(Calendar.HOUR_OF_DAY, amount);
} else if (unit.equals("minute") || unit.equals("minutes")) {
calendar.add(Calendar.MINUTE, amount);
}
return sdf.format(calendar.getTime()); } catch (Exception e) {
e.printStackTrace();
return "";
}
}