JSP的replaceAll()转换方法

想用JSP循环显示图片 图片路径为:E:\Picture\WebImg\Hot\Show\1.jpg
想循环输出的路径为:..\Show\1.jpg 代码片段如下,希望各位大侠帮帮忙!
<%
request.setCharacterEncoding("GBK");
GamesDao ud = new GamesDao();
List<GamesInfo> list = ud.showGames();
for(int i=4;i<8;i++)
{
%>

<a href="<%=request.getContextPath()% >/ZYJSP/GamesShow.jsp?Id=<%=list.get(i).getGamesID() %>" target="_blank">
<%
String gamesPic = gamesinfo.getGamesPic();
gamesPic = gamesPic.replaceAll("E:\Picture\WebImg\Hot", "..");
%> <%-- 就是这里转换出现问题 --%>

<img src="<%= list.get(i).gamesPic %>"/>

<%
}
%>
请大虾帮帮忙 问题还是没能解决!

顺便问一下怎样在jsp利用 embed 播放背景音乐
代码如下:

<embed src="../ZYDownLoad/DownMusic/爱我别走.mp3" width="340" height="80" loop="true" autostart="true"></embed>

在html中可以播放 但在JSP中就只有显示没有播放

\是转义字符

应该是"E:\\Picture\\WebImg\\Hot" 或者 "E:/Picture/WebImg/Hot"

而不是"E:\Picture\WebImg\Hot"

<img src="<%= list.get(i).gamesPic %>" alt="<%= list.get(i).getGamesName() %>" 错
list.get(i)是Object类型
你没有强制类型转换

你的list用了List<GamesInfo>(泛型),是GamesInfo类型,也可以不用强制类型转换。

list.get(i).gamesPic
gamesPic是属性还是方法
如果是属性,如果是private的,你无权访问,public的可以访问属性。

你好好检查一下代码吧

\\java正则表达式没有匹配上,你这样写
gamesPic = gamesPic.replaceAll("E:/Picture/WebImg/Hot", "..");
就可以了,用反斜杠

\r\n代表回车换行
而\Picture java认为是16进制的字符,例如\0000.而\Picture写16进制不正确,所以报错了。

gamesPic = gamesPic.replaceAll("E:/Picture/WebImg/Hot", "..");
?????
这样不行吗?
还有哪里提示错误?

在JSP中你点击播放可以正常播放吗?
如果不能,说明没有找到mp3的文件路径
温馨提示:答案为网友推荐,仅供参考
相似回答