请问这个错误怎么改:String index out of range: 10

村北头的码农
人工智能领域新星创作者
2005-03-22 05:24:36
代码如下:
<%@ page language="java" import = "java.sql.*,java.util.*" contentType="text/html;charset=gb2312"%>
<jsp:useBean id="db" scope="page" class="opendb.opendb"/>
<%
String sql = "SELECT b.EMP_CODE,a.EMP_NAME,b.M_TIMES,b.M_STIME,b.M_ETIME,b.M_HOURS,b.M_CAUSE,b.M_TIME,b.M_NOTE FROM wglMESSAGE b left join wglPERSON a on a.EMP_CODE=b.EMP_CODE order by b.M_TIME ASC";
ResultSet rs=db.executeQuery(sql);
%>
<html>
<head>
<title>个人请假查询</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<SCRIPT LANGUAGE="JavaScript">

function link(vid){
document.S_form.udp.value =vid;
document.S_form.action="restpishi.jsp";
document.S_form.submit();
}
</script>
<body background="/DSN/b.files/bj.gif">
<form id="S_form" name="S_form" method="post" action="" >
<table border=1 align="center" bordercolor="#008000">
<tr bgcolor="#99FFFF">
<td width="10%" height="16">
<p align="center">人员姓名</p></td>
<td width="10%" height="16">
<p align="center">开始时间</p></td>
<td width="10%" height="16">
<p align="center">结束时间</p></td>
<td width="5%" height="16">
<p align="center">小时数</p></td>
<td width="10%" height="16">
<p align="center">原因</p></td>
<td width="10%" height="16">
<p align="center">申请时间</p></td>
<td width="10%" height="16">
<p align="center">种类</p></td>
<td width="10%" height="16">
<p align="center">批示</p></td>
</tr>
<% while(rs.next())
{
String personID=rs.getString("EMP_CODE");
String personname=rs.getString("EMP_NAME");
String times=rs.getString("M_TIMES");
String Stime=rs.getString("M_STIME");
Stime=Stime.trim();
String Syear=Stime.substring(0,4);
String Smonth=Stime.substring(4,6);
String Sday=Stime.substring(6,8);
String Shour=Stime.substring(8,10);
String Sminute=Stime.substring(10,12);
String Etime=rs.getString("M_ETIME");
Etime=Etime.trim();
String Eyear=Etime.substring(0,4);
String Emonth=Etime.substring(4,6);
String Eday=Etime.substring(6,8);
String Ehour=Etime.substring(8,10);
String Eminute=Etime.substring(10,12);
int hours=rs.getInt("M_HOURS");
String cause=rs.getString("M_CAUSE");
String time=rs.getString("M_TIME");
String answer=rs.getString("M_NOTE");
if(answer==null)
{

%>
<tr>
<td width="10%" height="16" ><p align="center"><%=personname%></p></td>
<td width="10%" height="16" ><p align="center"><%=Syear %>-<%=Smonth %>/<%=Sday %>/<%=Shour %>:<%=Sminute %></p></td>
<td width="5%" height="16" ><p align="center"><%=Eyear %>-<%=Emonth %>/<%=Eday %>/<%=Ehour %>:<%=Eminute %></p></td>
<td width="10%" height="16" ><p align="center"><%=hours%></p></td>
<td width="10%" height="16" ><p align="center"><%=cause%></p></td>
<td width="10%" height="16" ><p align="center"><%=time%></p></td>
<td width="10%" height="16" ><p align="center">
<SELECT NAME="answer">
<OPTION SELECTED> </OPTION>
<OPTION value="0">有薪休假</OPTION>
<OPTION value="1">无薪休假</OPTION>
<OPTION value="2">无事故</OPTION></SELECT></p></td>
<td align="center" width="10%"><font size="2" color="000000"><a HREF="javascript:link('<%=times%>')">Y</a></font></td>
</tr>

<%
}
%>
<%
}
%>
</table>
<input type="hidden" id="udp" name="udp">
</form>
<p align="center"><a href="leaderBack.jsp">返回</a></p>
</body>
</html>
字符串下标益出?怎么改?急等!谢谢
...全文
2486 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
q7pb 2005-03-22
  • 打赏
  • 举报
回复
String Syear="";
String Smonth="";
String Sday="";
String Shour="";
String Sminute="";
if(Stime != null && Stime.length()>=12){
Syear=Stime.substring(0,4);
Smonth=Stime.substring(4,6);
Sday=Stime.substring(6,8);
Shour=Stime.substring(8,10);
Sminute=Stime.substring(10,12);
}
DreamDragon_NEU 2005-03-22
  • 打赏
  • 举报
回复
String Sminute=Stime.substring(10,12);
String Eminute=Etime.substring(10,12);
把这两句中的12分别替换成Stime.length和Etime.length
村北头的码农 2005-03-22
  • 打赏
  • 举报
回复
那该怎么改啊?能说说么,谢谢
chris_zjy 2005-03-22
  • 打赏
  • 举报
回复
估计是你substring 的时候的问题
string 的长度不足你要sub的位数
猜测

81,122

社区成员

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

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