Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过JAVA JSP显示所选日期A和日期B之间的日期_Java_Jsp_Date - Fatal编程技术网

通过JAVA JSP显示所选日期A和日期B之间的日期

通过JAVA JSP显示所选日期A和日期B之间的日期,java,jsp,date,Java,Jsp,Date,我想在jsp表中显示DateA和DateB之间的日期 例如: 日期a=23-01-2014 日期b=26-01-2014 输出: 日期 23-01-2014 24-01-2014 25-01-2014 26-01-2014 到目前为止,我已经做到了: index.jsp <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> &l

我想在jsp表中显示DateA和DateB之间的日期

例如:

日期a=23-01-2014 日期b=26-01-2014

输出:

日期

  • 23-01-2014
  • 24-01-2014
  • 25-01-2014
  • 26-01-2014
到目前为止,我已经做到了:

index.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form name="datepickeer" action="showdates.jsp" method="POST">
<table>
<tr><td>Date début :</td> <td><input type = "date" name = "dateA">
</td><tr>
<tr><td><input type = "submit" name = "submit" value = "submit">
</td></tr>
</table>
</form>
</body>
</html>
<%@ page import = "java.util.Date,java.text.SimpleDateFormat,java.text.ParseException"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<% String dateStr = request.getParameter("dateA");
SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd");
Date result = formater.parse(dateStr);
SimpleDateFormat newFormater = new SimpleDateFormat("dd-MM-yyyy");
out.println(newFormater.format(result));
%>
</body>
</html>

JSP页面
日期dé但是:
showDates.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form name="datepickeer" action="showdates.jsp" method="POST">
<table>
<tr><td>Date début :</td> <td><input type = "date" name = "dateA">
</td><tr>
<tr><td><input type = "submit" name = "submit" value = "submit">
</td></tr>
</table>
</form>
</body>
</html>
<%@ page import = "java.util.Date,java.text.SimpleDateFormat,java.text.ParseException"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<% String dateStr = request.getParameter("dateA");
SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd");
Date result = formater.parse(dateStr);
SimpleDateFormat newFormater = new SimpleDateFormat("dd-MM-yyyy");
out.println(newFormater.format(result));
%>
</body>
</html>

JSP页面
我选择2014年4月2日时的输出为:

2014年4月2日


创建日期a后,我应该对日期b执行相同的操作,然后,下一步应该做什么???

您应该使用日历,并在日历中添加1。直到循环到达日期为止

    String dateA = "2014-02-02";
    String dateB = "2014-02-06";

    SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd");
    Date dateStart = null;
    Date dateEnd = null;

    dateStart = formater.parse(dateA);
    dateEnd = formater.parse(dateB);

    Calendar c = GregorianCalendar.getInstance();

    c.setTime(dateStart);

    List<Date> dates = new ArrayList<Date>();

    while (!c.getTime().after(dateEnd)) {
        dates.add(c.getTime());
        c.add(Calendar.DAY_OF_YEAR, 1);
    }

    for (Date element: dates)
    {
        System.out.println("The date is "  + element);

    }
String dateA=“2014-02-02”;
字符串dateB=“2014-02-06”;
SimpleDataFormat格式化程序=新SimpleDataFormat(“yyyy-MM-dd”);
dateStart=null;
Date-dateEnd=null;
dateStart=formatter.parse(dateA);
dateEnd=formatter.parse(dateB);
Calendar c=gregorianalendar.getInstance();
c、 设置时间(日期开始);
列表日期=新建ArrayList();
而(!c.getTime().after(dateEnd)){
dates.add(c.getTime());
c、 添加(日历日/年,1);
}
for(日期元素:日期)
{
System.out.println(“日期为”+元素);
}

你能给我举个例子吗?当然。。我将编辑我的responsethaanks以获得您的帮助,但您的解决方案对我不起作用它显示了以下错误:HTTP状态500-内部服务器错误异常org.apache.jasper.jaspereException:java.lang.NullPointerException根因java.lang.NullPointerException因为我在代码中没有引用jasper,所以没有任何意义。。。我测试了我的代码,它工作了Hi pat,它工作了,当我选择dateA:2014/04/03和dateB:2014/04/03时,输出是:日期是2014年4月3日星期四00:00:00 WAT日期是2014年4月4日星期五00:00:00 WAT日期是2014年4月5日星期六00:00 WAT日期是2014年4月6日00:00 WAT日期,我希望输入如下所示:03-04-2014 04-04-2014 05-04-2014 06-04-2014,请帮助我