参见FAQ..或者搜索上传,smartupload ,下载.. 或者google搜索 (搜索的好处能发现好多关联的问题。)论坛是发现问题,解决问题,讨论问题的地方,你的问题大家都讨论过了,所以
如果论坛上总是出现相同的问题,可能对一些常来的人失去兴趣了,不利于论坛健康发展。而csdn所谓的人气旺盛,大部分也都是我们这些初学者,即使我贴了,对你的帮助也不大。。 关于提问参见(http://forum.hibernate.org.cn/viewtopic.php?t=70&sid=bb5a01c054993b7a2ee132dbe93d4aeb)btw,我也好多问题不懂,一般都是搜索的。。只有知己明白,了解又有疑惑的问题才拿来提问,提问也是个讨论的过程。 希望你能理解,谢谢:)

解决方案 »

  1.   

    我现在就是在搜索呀,手边的两本参考书没有提级这方面的问题。CSDN好象不提供关键字的检索,我也不可能把所有的帖子一个一个的找一遍呀。
      

  2.   

    JSP利用组件实现文件上传的全攻略一、首先下载jspsmartupload组件
    http://www.jspsmart.com 或
    http://www.hoodle.net/other/zujian/jspSmartUpload.zip二、将目录jspsmartupload/wib_inf/classes中的内容拷贝到网站所在的实际目录中的web_inf中(resin是这个目录,其他的可能是classes,具体请查阅jspsmartupload/help/setup.htm)三、如果是resin运行JSP,请在resin的conf/resin.conf中的
    <web-app>和</web-app>中加入:
    <path-mapping url-pattern='/upload/*' real-path='f:\jsp\jspsmartupload\upload'/>四、上传界面的代码如下:(文件名:insert.htm)
    <FORM METHOD="POST" ACTION=" uploadfile.jsp" ENCTYPE="multipart/form-data">
    <INPUT TYPE="FILE" NAME="FILE1" SIZE="50"><BR>
    <INPUT TYPE="FILE" NAME="FILE2" SIZE="50"><BR>
    <INPUT TYPE="FILE" NAME="FILE3" SIZE="50"><BR>
    <INPUT TYPE="FILE" NAME="FILE4" SIZE="50"><BR>
    主题:<input type="text" name="text1" ><br><INPUT type=submit value=写 完 name=ok>
    </form>注意上面的real-path目录五、uploadfile.jsp的代码如下:<%@ page language="java" import="com.jspsmart.upload.*"%>
    <jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" /><HTML>
    <BODY BGCOLOR="white"><H1>hoodle-jsp</H1>
    <HR><%int count=0;mySmartUpload.initialize(pageContext);'文件上传
    mySmartUpload.upload();
    '获得文本的内容
    String content = mySmartUpload.getRequest().getParameter("text1");
    '显示文本的内容
    out.println(content);
    '上传的情况统计
    for (int i=0;i<mySmartUpload.getFiles().getCount();i++){com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(i);if (!myFile.isMissing()) {
    myFile.saveAs("/upload/" + myFile.getFileName());
    out.println("FieldName = " + myFile.getFieldName() + "<BR>");
    out.println("Size = " + myFile.getSize() + "<BR>");
    out.println("FileName = " + myFile.getFileName() + "<BR>");
    out.println("FileExt = " + myFile.getFileExt() + "<BR>");
    out.println("FilePathName = " + myFile.getFilePathName() + "<BR>");
    out.println("ContentType = " + myFile.getContentType() + "<BR>");
    out.println("ContentDisp = " + myFile.getContentDisp() + "<BR>");
    out.println("TypeMIME = " + myFile.getTypeMIME() + "<BR>");
    out.println("SubTypeMIME = " + myFile.getSubTypeMIME() + "<BR>");count ++;}}
    out.println("<BR>" + mySmartUpload.getFiles().getCount() + " files could be uploaded.<BR>");
    out.println(count + " file(s) uploaded.");
    %>
    </BODY>
    </HTML>
      

  3.   

    http://www.csdn.net/develop/Read_Article.asp?Id=16432
      

  4.   

    给你一个简单的例子,你自己想一下吧loadfile.html
    <%@page contenttype="text/html;charset=gb2312"%>
    <html>
    <body>
    <p>单击超连接下载zip文档book.zip
    <br>
    <a href="loadfile.jsp">下载book.zip
    </body>
    </html>
    loadfile.jsp
    <%@ page contentType="text/html;charset=gb2312"%>
    <%@page import="java.io.*"%>
    <html>
    <body>
    <%
       OutputStream  o=response.getOutputStream();
       byte b[]=new byte[500];
      File fileLoad=new File("E:/aa.mdb");
       response.setHeader("contnt-disposition","attachment; filename="+"aa.rar");
       response.setContentType("application/x-tar");
       long fileLength=fileLoad.length();
       String length1=String.valueOf(fileLength);
       response.setHeader("Content_Length",length1);
       FileInputStream in=new FileInputStream(fileLoad);
       int n;
       while((n=in.read(b))!=-1)
       {
       o.write(b,0,n);
       }
       %>
       </body>
       </html>upload.html
    <%@ page contentType="text/html;charset=gb2312"%>
    <html>
    <body>
    <p>选择要上传的文件:<br>
      <form action="upload.jsp" method=post ENCTYPE="multipart/form-data">
      <input type="FILE" name="boy" size="38">
      <br>
      <input type="submit" name="g" value="提交">
      </body>
      </html>
    upload.jsp<%@ page contentType="text/html;charset=gb2312"%>
    <%@ page import="java.io.*"%>
    <html>
    <body>
     <% try{//用户的seesion 的id 建立一个临时文件。
       String tempFileName=(String)session.getId();
     //建立临时文件f1.
     File f1=new File("E:/",tempFileName);
     FileOutputStream o=new FileOutputStream(f1);
     //将客户上全部信息存入f1.
     InputStream in=request.getInputStream();
     byte b[]=new byte[1000];
     int n;
     while((n=in.read(b))!=-1)
    {
     o.write(b,0,n);
    }
    o.close();in.close();
    //读取临时文件f1,从中获取上传文件的名字和上传的内容。
    RandomAccessFile random=new RandomAccessFile(f1,"r");
    //读取f1 的第2行,析取上传文件的名字。
    int second=-1;
    String secondLine=null;
    while(second<=2)
    {secondLine=random.readLine();
    second++;
    }
    //获取第2行中'\\'最后出现的位置。
    int position =secondLine.lastIndexOf('\\');
         String fileName=secondLine.substring(position,secondLine.length()-1);
         random.seek(0);//再定位到文件的开头。
     //获取文件的第4 行的回车符号的位置。
     long forthEndPosition=0;
     int forth=1;
     while((n=random.readByte())!=-1&&(forth!=4))
    {
     if(n=='\n')
    {
     forthEndPosition=random.getFilePointer();
     forth++;
    }
    }
    //根据客户上传文件名字,将该文件存入磁盘。
    File f2=new File("E:/",fileName);
    session.setAttribute("Name",fileName);//供showImage.jsp页面使用
        RandomAccessFile random2=new RandomAccessFile(f2,"rw");
    //确定文件f1中包含客户上传的文件 的内容的最后位置,即倒数第6行。
    random.seek(random.length());
    long endPosition=random.getFilePointer();
    long =endPosition;
    int j=1;
    while((>=0)&&(j<=6))
    {
    --;
    random.seek();
    n=random.readByte();
    if(n=='\n')
    {
    endPosition=random.getFilePointer();
    j++;
    }
    }
    //将random流指向文件f1的第4 行结束的位置。
    random.seek(forthEndPosition);
    long startPoint=random.getFilePointer();
    //从f1 读出客房上文件 并存入f2(读取从第4 行结束位置和倒数第6行之间的内容)。
    while(startPoint<endPosition-1)
    {
    n=random.readByte();
    random2.write(n);
    startPoint=random.getFilePointer();
    }
    random2.close();
    random.close();
    f1.delete();//删除临时文件。
    }
    catch(IOException e){}
    out.print("文件已上传");
    %>
    </body>
    </html>
    这是一个思路:你自己想一下吧