返回信息流struts框架
action中用
File[] files=dir.listFiles();获得某个目录下的文件的集合
HashMap<String, String> map=new HashMap<String, String>();
String path=null;
String name=null;
for(int i=0;i<files.length;i++){
path=files[i].getPath();
//name是为了得到文件的文件名,path是绝对路径
name=path.substring(path.lastIndexOf(File.separator)+1);
//map中把path和name组成一个<key,value>,为了在jsp中获得文件的路径
map.put(path,name);
}
session.setAttribute("files", map);
jsp中的代码:
<c:forEach items="${sessionScope.files }" var="file">
<tr>
<td><a href="${file.key }">${file.value }</a></td>
</tr>
</c:forEach>
但是在页面上什么也显示不出来。什么原因?
之前把map替换成vector的时候是可以取到文件名及其相关的内容的。
也就是说files数组里面有值,
我调试了一下,单步执行map里面也能写入对应的<key,value>
但是map里面的Entry实体却是null。
不知道我哪里出错了,上网查了下,基本没有遇到这种情况的= =
这是一条镜像帖。来源:北邮人论坛 / java / #16802同步于 2010/12/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
jsp中用c:foreach使用session中的map
cb
2010/12/10镜像同步9 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
上网看了下,可以用map,但是我这边出不来东西。
不知道是不是我添加session属性或者map用的有问题= =
【 在 moonpather (魍魉亚龙) 的大作中提到: 】
: 好像只能遍历 Collections吧