用浏览器上传文件时,如何获取文件本身的生成时间。

解决方案 »

  1.   

    你可以在上传的时候调用一个生成当前时间的函数,函数可以这样写:
       public String getNowDate()
       {
           GregorianCalendar gregoriangalendar = new GregorianCalendar();
           int year = gregoriangalendar.get(GregorianCalendar.YEAR);
           int month = gregoriangalendar.get(GregorianCalendar.MONTH)+1;
           int day = gregoriangalendar.get(GregorianCalendar.DAY_OF_MONTH);
           String nowdate = year+"-"+month+"-"+day
           return nowdate;
       }
      

  2.   

    有办法,但是不实用.
    可以在客户端用Jscript的FSO获取文件DateCreated属性.然后设法上传.但是会弹出窗口询问"是否同意FSO操作?可能危及安全!"
      

  3.   

    File fr = new File(path);
    File subs[] = fr.listFiles();
    File tmpvalue;
    for(int i=0;i<subs.length;i++){//sort by lastModified
    for(int j=i+1;j<subs.length;j++)
    if(subs[i].lastModified()<subs[j].lastModified())
    {
    tmpvalue=subs[i];
    subs[i]=subs[j];
    subs[j]=tmpvalue;
    }        
    }
    String str="";
    int count = subs.length;
    for(int i=0;i<count;i++){
    if(subs[i].isDirectory())continue;
    str = subs[i].getName();
    out.println("<tr>");
    out.println("<td><a href='"+str+"'>" + str + "</a></td>");
    out.println("<td>" + (subs[i].length()/1024)+"&nbsp;&nbsp;k</td>");
    out.println("<td>" + (new java.util.Date(subs[i].lastModified()).toLocaleString())+"</td>");
    out.println("</tr>");
    }