• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JSP > jsp编程获取当前目录下的文件和目录及windows盘符的方法

jsp编程获取当前目录下的文件和目录及windows盘符的方法

作者:besttaling 字体:[增加 减小] 来源:互联网 时间:2017-05-11

besttaling通过本文主要向大家介绍了盘符根目录,什么是盘符根目录,目录盘符,系统所在目录盘符,jsp 获取根目录等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了jsp编程获取当前目录下的文件和目录及windows盘符的方法。分享给大家供大家参考,具体如下:

(一)获取当前目录下的文件和目录

知识点

1 file对象的应用
2 listFiles()方法
3 isDirectory()方法,isFile()方法 判断是否为目录或是文件
4转换字符串方法toString

(1)创建一个file对象dir,
然后用listFiles()方法返回当前目录下所有文件

String path=request.getRealPath("/");
File dir=new File(path);
File file[]=dir.listFiles();

</div>

(2)循环判断所返回的是否为目录,并显示出来:

<%
for(int i=0;i<file.length;i++)
{
  if(file[i].isDirectory())//
  out.print("<br>"+file[i].toString());
}
%>

</div>

(3)循环判断所返回的是否为目录,并显示出来:

<%
for(int i=0;i<file.length;i++)
{
  if(file[i].isFile())
  out.print("<br>"+file[i].toString());
}
%>

</div>

程序:

<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="java.io.*"%>
<html>
<title></title>
<body>
<%
String path=request.getRealPath("/");
File dir=new File(path);
File file[]=dir.listFiles();//用file对象的listFiles()方法返回指定目录下的文件
%>
当前<%=path%><br>
目录有:
<%
for(int i=0;i<file.length;i++)
{
  if(file[i].isDirectory())
  out.print("<br>"+file[i].toString());
}
%>
<p>文件有:
<%
for(int i=0;i<file.length;i++)
{
  if(file[i].isFile())
  out.print("<br>"+file[i].toString());
}
  %>
</body>
</html>

</div>

(二)获取windows盘符

<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="java.io.*"%>
<html>
<body>
<%
File[] roots=File.listRoots();
for(int i=0;i<roots.length;i++)
{
out.print("<br>"+roots[i].getPath());
}
%>
</body>
</html>

</div>

(三)将两个程序合并

<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="java.io.*,java.util.*,java.net.*" %>
<%!
private final static int languageNo=0; //语言版本,0 : 中文; 1:英文
String[] strDrivers   = {"驱动器","Drivers"};
String[] strCurrentFolder= {"当前目录","Current Folder"};
%>
<html>
<body>
<%
String path=request.getRealPath("/");
File dir=new File(path);
File file[]=dir.listFiles();//用file对象的listFiles()方法返回指定目录下的文件
StringBuffer sb=new StringBuffer(strDrivers[languageNo] + " : ");
File roots[]=File.listRoots();
for(int i=0;i<roots.length;i++)
{
  sb.append(" <a href=/"javascript:doForm('','"+roots[i]+"//','','','1','');/">");
  sb.append(roots[i]+"</a> ");
}
//out.println(sb);
%>
<%
//out.print("<table border='1' width='100%' bgcolor='#FFFFFF' cellspacing=0 cellpadding=5 bordercolorlight=#000000 bordercolordark=#FFFFFF><tr><td>"+strCurrentFolder[languageNo]+":<br><b>"+path+"</td><td>"+sb+"</td></tr></table>");
%>
<table border='1' width='100%' bgcolor='#FFFFFF' cellspacing=0 cellpadding=5 bordercolorlight=#000000 bordercolordark=#FFFFFF>
<tr>
<td width='40%'><%=strCurrentFolder[languageNo]%>:<br><%=path %></td><td width='60%'><%=strDrivers[languageNo] %>:<%=sb%></td></tr>
</table>
<table border='1' width='100%' bgcolor='#FFFFFF' cellspacing=0 cellpadding=5 bordercolorlight=#000000 bordercolordark=#FFFFFF>
<tr>
<td width='40%'>目录有:
<%
for(int i=0;i<file.length;i++)
{
  if(file[i].isDirectory())
  out.print("<br>"+file[i].toString());
}
%>
</td>
<td width='60%'>文件有:
<%
for(int i=0;i<file.length;i++)
{
  if(file[i].isFile())
  out.print("<br>"+file[i].toString());
}
  %>
</td>
</tr>
</table>
</body>
</html>

</div>

我们进一步的优化,实现

<%@ page contentType="text/html; charset=GBK" %>
<%@page import="java.io.*,java.util.*,java.net.*" %>
<head>
<style type="text/css">
td,select,input,body{font-size:9pt;}
A { text-decoration: none }
#tablist{
padding: 5px 0;
margin-left: 0;
margin-bottom: 0;
margin-top: 0.1em;
font:9pt;
}
#tablist li{
list-style: none;
display: inline;
margin: 0;
}
#tablist li a{
padding: 3px 0.5em;
margin-left: 3px;
border: 1px solid ;
background: #FFFFFF;
}
#tablist li a:link, #tablist li a:visited{
color: navy;
}
#tablist li a.current{
background: #FFFFFF;
}
#tabcontentcontainer{
width: 100%;
padding: 5px;
border: 1px solid black;
}
.tabcontent{
display:none;
}
</style>
</head>
<%!
private final static int languageNo=1; //语言版本,0 : 中文; 1:英文
String[] strCurrentFolder= {"当前目录","Current Folder"};
String[] strDrivers   = {"驱动器","Drivers"};
String[] strFileName   = {"文件名称","File Name"};
String[] strFileSize   = {"文件大小","File Size"};
String[] strLastModified = {"最后修改","Last Modified"};
String[] strFileOperation= {"文件操作","Operations"};
String[] strFileEdit   = {"修改","Edit"};
String[] strFileDown   = {"下载","Download"};
String[] strFileCopy   = {"复制","Move"};
String[] strFileDel   = {"删除","Delete"};
String getDrivers() 
{ 
StringBuffer sb=new StringBuffer(": "); 
File roots[]=File.listRoots(); 
for(int i=0;i<roots.length;i++) 
{ 
sb.append("<a href='?path="+roots[i]+"'>"); 
sb.append(roots[i]+"</a>   "); 
} 
return sb.toString(); 
}
String formatPath(String p)
{
StringBuffer sb=new StringBuffer();
for (int i = 0; i < p.length(); i++) 
{
  if(p.charAt(i)=='//')
  {
  sb.append("////");
  }
  else
  {
  sb.append(p.charAt(i));
  }
}
return sb.toString();
}
public static String toChinese(String str)
{
  try{
  if(str==null)
  {
   return "";
  }else
  {
   str=new String(str.getBytes("ISO8859_1"),"GBK");
   return str;
  }
  }catch(Exception e)
  {
  return "";
  }
}
%>
<%
request.setCharacterEncoding("gb2312");
String strDir =toChinese( request.getParameter("path")); 
if(strDir==null||strDir.length()<1)
{
strDir = request.getRealPath("/");
}
StringBuffer sb=new StringBuffer(""); 
StringBuffer sbFile=new StringBuffer(""); 
try 
{
File objFile = new File(strDir); 
File list[] = objFile.listFiles(); 
if(objFile.getAbsolutePath().length()>3) 
{ 
sb.append("<tr><td > </td><td><a href='?path="+formatPath(objFile.getParentFile
().getAbsolutePath())+"'>"); 
sb.append("To ParentFile</a><br>- - - - </td></tr>/r/n"); 
} 
for(int i=0;i<list.length;i++) 
{ 
if(list[i].isDirectory()) 
{ 
sb.append("<tr><td> </td><td>"); 
sb.append("<a href='?path="+formatPath(list[i].getAbsolutePath())+"'>"+list[i].getName()+"</a>"); 
sb.append("</td></tr>");
} 
else 
{ 
String strLen=""; 
String strDT=""; 
long lFile=0; 
lFile=list[i].length();
if(lFile>1000000) 
{ 
lFile=lFile/1000000; 
strLen="" + lFile + " M"; 
} 
else if(lFile>1000) 
{ 
lFile=lFile/1000; 
strLen="" + lFile + " K"; 
} 
else 
{ 
strLen="" + lFile + " Byte"; 
} 
Date dt=new Date(list[i].lastModified()); 
strDT=dt.toLocaleString(); 
sbFile.append("<tr><td>"); 
sbFile.append(""+list[i].getName()); 
sbFile.append("&



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • jsp编程获取当前目录下的文件和目录及windows盘符的方法

相关文章

  • 2017-05-11用js绘图
  • 2017-05-11jsp编程去除空白行的方法
  • 2017-05-11response.setHeader参数、用法的介绍
  • 2017-05-11Java中对HashMap的深度分析
  • 2017-05-11实例讲解JSP获取ResultSet结果集中的数据的方法
  • 2017-05-11jsp中过滤器选择过滤器的写法详解
  • 2017-05-11JDBCTM 指南:入门2 - 连接
  • 2017-05-11jsp传值中文乱码问题解决方法示例介绍
  • 2017-05-11JSP中param标签用法实例分析
  • 2017-05-11JSP向后台传递参数的四种方式总结

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • jsp导出excel并支持分sheet导出的方法
    • jsp网页登陆验证
    • jsp防止跨域提交数据的具体实现
    • JSP 连接MySQL配置与使用
    • Spring MVC的文件下载实例详解
    • JSP技术生成动态web页面
    • JSP常见的文件操作小结
    • jsp计数器-jsp文件
    • JSP开发入门
    • JSP学习之Java Web中的安全控制实例详解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有