扫码关注官方订阅号
日期怎么和数做减法啊
2016-07-04减去7天 这样的一个表达式要怎么写 要求减完之后 是string类型接收
给指点一下
走同样的路,发现不同的人生
基本思路:2016-07-04是一个字符串,应该把它转换为秒为单位的整数,然后减去 7 * 24 * 60 * 60s,在转换回日期的字符串。
2016-07-04
7 * 24 * 60 * 60s
java的写法:
String s = "2016-07-04"; SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd"); Date d; try { d = formatter.parse(s); long t = d.getTime() - 7 * 24 * 60 * 60 * 1000; d.setTime(t); System.out.println(formatter.format(d)); } catch (Exception e) { e.printStackTrace(); } finally { // ... }
得到的结果:
2016-06-27
代码如下:
package tt; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import org.apache.commons.lang3.StringUtils; public class TestDate { /* 三种时间格式 */ public static final String DATE_FORMAT = "yyyy-MM-dd"; public static final String DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss"; public static final String DATETIME = "yyyyMMddHHmmss"; public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT); Date date = sdf.parse("2016-07-04"); Date date2 = removeDays(date1, 7); System.out.println(toString(date2, DATETIME_FORMAT)); } /* 日期减天数 */ public static Date removeDays(Date oldDate, int n) { Date newDate = null; Calendar calOld = Calendar.getInstance(); calOld.setTime(oldDate); int day = calOld.get(Calendar.DAY_OF_YEAR); Calendar calNew = Calendar.getInstance(); calNew.setTime(oldDate); calNew.set(Calendar.DAY_OF_YEAR, day - n); newDate = calNew.getTime(); return newDate; } /* Date转string类型 */ public static String toString(Date date, String formatStr) { if (null == date || StringUtils.isBlank(formatStr)) return ""; SimpleDateFormat sdf = new SimpleDateFormat(formatStr); return sdf.format(date); } }
你非要在jsp页面里面写吗?最好的是在后台Java里面处理好返回到页面。jsp处理方法:在jsp页面导入java.util包,<%@ page import="java.util.*"%>
Calendar c = Calendar.getInstance(); c.setTime(new Date());// 原来的时间 c.add(Calendar.DAY_OF_MONTH, -7);// 减7天 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String date = sdf.format(c.getTime());减7天后的时间
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
基本思路:
2016-07-04
是一个字符串,应该把它转换为秒为单位的整数,然后减去7 * 24 * 60 * 60s
,在转换回日期的字符串。java的写法:
得到的结果:
代码如下:
你非要在jsp页面里面写吗?最好的是在后台Java里面处理好返回到页面。
jsp处理方法:在jsp页面导入java.util包,<%@ page import="java.util.*"%>