如何计算这种日期值?

yjmking 2003-11-11 10:37:53
有三个文本框(input),第一个是开始日期,第二个是周期(月份为单位),第三个是下次开始日期,输入开始日期和周期后,要能计算出下次开始日期。算法是:下次开始日期=开始日期+周期(月)-1(天)。请问高手们!怎么做!急!呀
...全文
158 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxl19790710 2003-11-11
  • 打赏
  • 举报
回复
function DateDemo(){
var d, s = "Today's date is: "; // 声明变量。
d = new Date(); // 创建 Date 对象。
s += (d.getMonth() + 1) + "/"; // 获取月份。
s += d.getDate() + "/"; // 获取日。
s += d.getYear(); // 获取年份。
return(s); // 返回日期。
}
stevene 2003-11-11
  • 打赏
  • 举报
回复
public Date getIssueDate(int a)
{
Date issueDate = null;
java.util.Calendar today = java.util.Calendar.getInstance();
int month = today.get(java.util.Calendar.MONTH)+1;
int year = today.get(java.util.Calendar.YEAR);
int day = today.get(java.util.Calendar.DAY_OF_MONTH);
String date = null;
switch(a)
{
case 1 :
day = day - 1;
date = year + "-" + month + "-" + day;
issueDate = Date.valueOf(date);
break;
case 2 :
day = day - 2;
date = year + "-" + month + "-" + day;
issueDate = Date.valueOf(date);
break;
case 3 :
day = day - 3;
date = year + "-" + month + "-" + day;
issueDate = Date.valueOf(date);
break;
case 4 :
day = day - 7;
date = year + "-" + month + "-" + day;
issueDate = Date.valueOf(date);
break;
case 5 :
day = day - 14;
date = year + "-" + month + "-" + day;
issueDate = Date.valueOf(date);
break;
case 6 :
month = month - 1;
date = year + "-" + month + "-" + day;
issueDate = Date.valueOf(date);
break;
case 7 :
month = month - 2;
date = year + "-" + month + "-" + day;
issueDate = Date.valueOf(date);
break;
}
//System.out.println(issueDate);
return issueDate;
}

看一下,希望对你有帮助
noratong 2003-11-11
  • 打赏
  • 举报
回复
把字符串转化为Date类的一个对象会吗????

会这后,就应该很好作了.
cen8535 2003-11-11
  • 打赏
  • 举报
回复
你看这个方法是不是对你有帮助:
public String getCalDate(String date,int type,int val)
{
String str="";
try
{
date=date.replaceAll("-","/");
java.util.Date d=new java.util.Date(date);
Calendar cal = Calendar.getInstance();
cal.clear();

cal.set((d.getYear()+1900),(d.getMonth()),d.getDate(),d.getHours(),d.getMinutes(),d.getSeconds());
switch (type)
{
case 1://日
cal.add(cal.DATE,val);
break;
case 2://周
cal.add(cal.DATE,7*val);
break;
case 3://月
cal.add(cal.MONDAY,val);
break;
case 4://年
cal.add(cal.YEAR,val);
break;
}

d = cal.getTime();
str=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(d);
str=this.getDate(str);
}
catch(Exception e)
{
System.out.println(e.getMessage());
}

return str;
}
lsy110 2003-11-11
  • 打赏
  • 举报
回复
哎!
sunny110 2003-11-11
  • 打赏
  • 举报
回复
up
凋零的老树 2003-11-11
  • 打赏
  • 举报
回复
其实就是日期相加减的问题
grgh2000 2003-11-11
  • 打赏
  • 举报
回复
/*
*DateUtil.java
*/
import java.text.DateFormat;
import java.util.Date;
import java.util.Calendar;
import java.text.SimpleDateFormat;

public class DateUtil
{
public static String getPeriodDate(String startTime,String period)
{
//String startTime="2003-11-11";
//String period="5";

DateFormat df = DateFormat.getDateInstance();
Calendar dt = Calendar.getInstance();
try {
dt.setTime(df.parse(startTime));
dt.set(Calendar.MONTH,dt.get(Calendar.MONTH)+Integer.parseInt(period)); //设置月份
dt.set(Calendar.DATE,dt.get(Calendar.DATE)-1); //设置日期

return new SimpleDateFormat("yyyy-MM-dd").format(dt.getTime());
}catch(Exception ex)
{
System.out.println("无效的参数");
}
return startTime; //如果错误则返回原值。
}

public static void main(String[] arg)
{
System.out.println(DateUtil.getPeriodDate("2003-11-11","5"));
}
}

--------------------------------
F:\>java DateUtil
2004-04-10
--------------------------------
可以直接扩充方法作为你的工具类吧?
sandyen 2003-11-11
  • 打赏
  • 举报
回复
去看看java的帮助文档SimpleDateFormat
kewin 2003-11-11
  • 打赏
  • 举报
回复
转化为 Date 的对象,再用 Date 的API
那很简单呀
源码下载地址: https://pan.quark.cn/s/8d2c461c797c JavaWeb程序设计构成了掌握Web交互式应用程序开发的核心领域,对于初学者来说,精通这一技术具有决定性意义。在“JavaWeb程序设计(第三版)作业答案”中,我们可以预期获得针对该教材习题的一系列深入解析,从而协助学习者强化知识体系。 JavaWeb所包含的技术组件涵盖了Servlet、JSP(JavaServer Pages)、JDBC(Java Database Connectivity)以及各类框架如Spring MVC、Struts等。Servlet是Java平台提供的一种扩展服务器功能的接口,能够处理HTTP请求并生成相应的反馈。JSP则是一种用于构建动态网页的工具,它支持开发者将HTML代码与Java代码进行整合编写,从而简化了Web应用程序的开发流程。 作业答案通常会涉及以下几个核心内容: 1. **Servlet基础**:可能包含Servlet生命周期、init(), service(), destroy()方法的应用,以及如何在web.xml文件中设定Servlet的映射关系。 2. **JSP基础**:JSP的九大内置对象,如request、response、session、application等的使用,以及EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)的实际操作。 3. **HTTP协议理解**:GET和POST请求方法的差异,请求头与响应头的应用,以及会话管理的概念阐释。 4. **JDBC数据库操作**:与数据库建立连接,执行SQL指令,处理查询结果集,以及...
源码链接: https://pan.quark.cn/s/a4b39357ea24 斐讯K2是一款广受用户青睐的无线路由器,其运行表现稳定且具备较高的可操作性,在DIY爱好者群体中拥有极高的声誉。本资料将系统性地阐述斐讯K2的固件刷机方法及其关联的技术要点。固件升级是路由器爱好者改善设备性能、扩展功能的一种普遍手段,经由替换出厂固件,能够达成更加个性化的网络配置、增强安全防护等目标。斐讯K2固件资源库涵盖了多种知名的非官方固件,诸如Tomato Pheonix 不死鸟、高恪、PandoraBox 潘多拉等,这些固件均具备独特的优势,能够适配不同用户的需求。 1. Tomato Pheonix 不死鸟:Tomato是一款立足于Linux的开源固件,以其精巧、高效而备受推崇。不死鸟版本是专门为华硕及斐讯路由器优化的分支,提供了卓越的QoS(服务质量)配置、详尽的图表监控以及便捷的固件升级途径。对于那些需要精准调控带宽和监测网络状态的用户而言,这是一个理想的选项。 2. 高恪:高恪固件是OpenWrt的定制化版本,着重于操作的便捷性和运行的可靠性,特别适合对路由器操作不甚熟悉的用户群体。它提供了一些实用的功能,例如内置的广告屏蔽、快速测速工具等,同时保留了OpenWrt的适应性。 3. PandoraBox 潘多拉:潘多拉盒是另一款基于OpenWrt的固件,它以丰富的插件库和强大的自定义潜力而闻名。用户能够依据个人需求安装各类插件,实现更多功能,如远程接入、DDNS(动态域名解析服务)等。 4. 官方固件的纯净版本与定制版本:官方固件通常更侧重于稳定性,纯净版意味着未预置额外的应用或服务,适合注重稳定性的用户。定制版则可能包含了制造商的特色功能或优...

81,110

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧