• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    jsp编程获取当前目录下的文件和目录及windows盘符的方法

    本文实例讲述了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();
    
    

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

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

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

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

    程序:

    %@ 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;ifile.length;i++)
    {
      if(file[i].isDirectory())
      out.print("br>"+file[i].toString());
    }
    %>
    p>文件有:
    %
    for(int i=0;ifile.length;i++)
    {
      if(file[i].isFile())
      out.print("br>"+file[i].toString());
    }
      %>
    /body>
    /html>
    
    

    (二)获取windows盘符

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

    (三)将两个程序合并

    %@ 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;iroots.length;i++)
    {
      sb.append(" a href=/"javascript:doForm('','"+roots[i]+"//','','','1','');/">");
      sb.append(roots[i]+"/a>nbsp;");
    }
    //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;ifile.length;i++)
    {
      if(file[i].isDirectory())
      out.print("br>"+file[i].toString());
    }
    %>
    /td>
    td width='60%'>文件有:
    %
    for(int i=0;ifile.length;i++)
    {
      if(file[i].isFile())
      out.print("br>"+file[i].toString());
    }
      %>
    /td>
    /tr>
    /table>
    /body>
    /html>
    
    

    我们进一步的优化,实现

    %@ 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;iroots.length;i++) 
    { 
    sb.append("a href='?path="+roots[i]+"'>"); 
    sb.append(roots[i]+"/a> nbsp;nbsp;"); 
    } 
    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 >nbsp;/td>td>a href='?path="+formatPath(objFile.getParentFile
    ().getAbsolutePath())+"'>"); 
    sb.append("To ParentFile/a>br>- - - - /td>/tr>/r/n"); 
    } 
    for(int i=0;ilist.length;i++) 
    { 
    if(list[i].isDirectory()) 
    { 
    sb.append("tr>td>nbsp;/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("/td>td>"); 
    sbFile.append(""+strLen); 
    sbFile.append("/td>td>"); 
    sbFile.append(""+strDT); 
    sbFile.append("/td>td>");
    sbFile.append(" a href=>");
    sbFile.append(strFileEdit[languageNo]+"/a> ");
    sbFile.append(" a href=>");
    sbFile.append(strFileDown[languageNo]+"/a> ");
    sbFile.append(" a href=>");
    sbFile.append(strFileCopy[languageNo]+"/a> ");
    sbFile.append(" a href=>");
    sbFile.append(strFileDel[languageNo]+"/a> ");
    sbFile.append("/td>/tr>/r/n"); 
    } 
    } 
    } 
    catch(Exception e) 
    { 
    out.println("font color=red>error: "+e.toString()+"/font>"); 
    } 
    %>
    table border='1' width='100%' bgcolor='#FFFFFF' cellspacing=0 cellpadding=5 bordercolorlight=#000000 bordercolordark=#FFFFFF>
    tr>
    td width='20%'>%=strCurrentFolder[languageNo]%>:br>%=strDir %>/td>td width='70%'>%=strDrivers[languageNo] %>%=getDrivers()%>
    /td>
    /tr>
    /table>
    table border='1' width='100%' bgcolor='#FFFFFF' cellspacing=0 cellpadding=5 bordercolorlight=#000000 bordercolordark=#FFFFFF>
    tr>
    td width='20%'valign="top">
    table >
    tr>td>%=sb%>/td>
    /tr>
    /table>
    /td>
    td width='70%'align="center" valign="top">
    table width="100%"border="1" cellspacing="1" cellpadding="4" bordercolorlight="#000000" bordercolordark="#FFFFFF">
    tr>
    td width="26%" align="center">%=strFileName[languageNo] %>/td>
    td width="19%" align="center">%=strFileSize[languageNo] %>/td>
    td width="29%" align="center">%=strLastModified[languageNo] %>/td>
    td width="26%" align="center">%=strFileOperation[languageNo] %>/td>/tr>
    tr>td width="25%" align="center">%=sbFile %>/td>/tr>
    /table>
    /td>
    /tr>
    /table>
    
    

    希望本文所述对大家jsp程序设计有所帮助。

    您可能感兴趣的文章:
    • Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
    • nodejs 递归拷贝、读取目录下所有文件和目录
    • js 获取本地文件及目录的方法(推荐)
    • JavaScript获取当前运行脚本文件所在目录的方法
    • javascript读取本地文件和目录方法详解
    上一篇:使用jsp:include控制动态内容的方法
    下一篇:jsp+servlet+javabean实现数据分页方法完整实例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

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