web实现进入指定目录

1.输入进入的目录

<body>
<
h1>输入读取的目录</h1>
<
input id="filePath" name="filePath"/>
<
input type="button" value="提交" οnclick="location.href='<%=request.getContextPath()%>/logList.jsp?filePath='+encodeURIComponent(encodeURIComponent(document.getElementById('filePath').value))"/>
</
body>

2.得到目录列表

<body>
<%
   
String filePath =request.getParameter("filePath");
   
filePath = URLDecoder.decode(URLDecoder.decode(filePath,"utf-8"), "utf-8");
   
File dir = new File(filePath);
   
if (dir.exists()) {
       
//获取该目录下的所有文件和目录组成的File数组

       
File[] files =dir.listFiles();
       
//递归遍历每一个子文
       
for (File file : files) {
%>
<ahref="<%=request.getContextPath()%>/logDetail.jsp?filePath=<%=URLEncoder.encode(URLEncoder.encode(file.getPath(),"utf-8"),"utf-8")%>"><%=file.getName()%>
</a>;<br>

<%}
%>
<inputtype="button" value="返回上一层" οnclick="history.back()">
<%
   
}
%>
</body>

 

3.详情页面,如果是目录进入目录,如果是文件则打开

<body>
<%
   
String filePath =request.getParameter("filePath");
   
filePath = URLDecoder.decode(URLDecoder.decode(filePath,"utf-8"), "utf-8");
   
String fileFullName = filePath;
%>
<h5><%=fileFullName%>
</h5>
<
p>
 
  <%
       
File file = new File(fileFullName);

       
if (file.exists()) {
           
//如果是目录,则:
           
if (file.isDirectory()) {

   
%>
   
<a href="<%=request.getContextPath()%>/logList.jsp?filePath=<%=URLEncoder.encode(URLEncoder.encode(file.getPath(),"utf-8"),"utf-8")%>"><%=file.getName()%>
       
<input type="button" value="进入" οnclick="history.back()">
           
<%
   
} else {
       
InputStreamReader read = new InputStreamReader(
               
new FileInputStream(file), "gbk");//考虑到编码格式
       
BufferedReaderbufferedReader = new BufferedReader(read);
       
String lineTxt = null;
       
while ((lineTxt =bufferedReader.readLine()) != null) {
   
%>
           
<%=
lineTxt%><br>
           
<%
           
}
           
read.close();
         %>
       
<input type="button" value="返回上一层" οnclick="history.back()">
           
<%
       
}
   
} else {
   
%>
       
无内容<br>
           
<%
       
}
   
%>
</p>
</
body>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值