我的JSP文件代码如下!  
我们公司要求只能用纯JSP来写,不能用上传类/控件,BEAN!  
只能在里写!  
html文件:  
<html>  
<head>  
<title>Title  here!</title>  
</head>  
<body>  
<form  ACTION="zq.jsp"  enctype="MULTIPART/FORM-DATA"  MATHOD="post"  >  
<input  type="file"  name="file"  value="filename">  
<input  type="submit"  value="上载">  
</form>  
</body>  
</html>  
 
zq.JSP文件:  
PrintWriter  pw=new  PrintWriter(new  BufferedWriter(new  FileWriter("zqjsp.txt")));  
//ServletInputStream  in=request.getInputStream();//这种方法与一下句的方法我都试过!不好用!  
DataInputStream  in  =  new  DataInputStream(request.getInputStream());  
int  i=in.read();  
while(i!=-1)  
{  
pw.print(i);  
i=in.read();  
}  
pw.close();  
问题1:  
上面的现象是可以生成空文件,但是生成的文件不是在当前目录下的而是生成在c:\winnt\system32中我怎么才能让其成生在指定的目录下呢?  
问题2:  
生成的文件就是为空,程序那里错了呢,这么写行吗(我没有用BEAN)  
请高手指教/*****主要是第二个问题*******/

解决方案 »

  1.   

    int  i=in.read();
    我试了一下,好象这句读不到数据,总是超时
      

  2.   

    是不是不能用READ来读啊,试试别的方法呢,比如READBYTE什么的
      

  3.   

    路径你可以new一个新的File(path)来存放你的流格式数据
      

  4.   

    新建文件!
    比如这一行,
    PrintWriter  pw=new  PrintWriter(new  BufferedWriter(new  FileWriter("zqjsp.txt")));  
    可否这样写呢?
    PrintWriter  pw=new  PrintWriter(new  BufferedWriter(new  FileWriter("/root/zq/defaultroot/zqjsp.txt")));
    意思就是在指的的目录下建个新文件?但是我执行程序有错!
    请教怎么写指定的目录里去呢可否写细点!
    还有第二个问题还没有解决请高手在次帮忙本人实时在线!!!!!!!!!!!!!!急!!!!!!!!!!!!!
      

  5.   

    smartupload的代码:
            m_totalBytes = m_request.getContentLength();
            m_binArray = new byte[m_totalBytes];
            for(; totalRead < m_totalBytes; totalRead += readBytes)
                try
                {
                    m_request.getInputStream();
                    readBytes = m_request.getInputStream().read(m_binArray, totalRead, m_totalBytes - totalRead);
                }
                catch(Exception e)
                {
                    throw new SmartUploadException("Unable to upload.");
                }
         然后还要把http头剔出来....
      

  6.   

    上头要求怎么就我们下面的就得怎么去做!
    现在最实际的是把程序写出来!
    楼上的兄弟!
    totalBytes = request.getContentLength();
    totalBytes 值是-1 就是我上面说的文件为空呀!
    真的怪了
    ASP,PHP里用这种方法都好使, 在请各位邦忙了!
      

  7.   

    哪有你想得那么简单,还是好好研究研究servlet的几个类吧,用enctype="MULTIPART/FORM-DATA"方式上传的文件要经过转换然后再去掉系统加的标示字符,才能得到你所上传的文件的字节代码,提示你用DataInputStream()来操作,然后用字节数组来接受传入的字符(in.read(byte[] data)方式),然后还要设计的很多String类的取字符串,和查找字符操作,单凭jsp太难写了,你们老板如果不让你用其他人的组件,你只好自己研究了然后写一个servlet,我这两天就正在写,小有成就,反正要多研究servlet,单凭jsp是做不出什么好东西的!
      

  8.   

    我的JSP文件代码如下!  
    我们公司要求只能用纯JSP来写,不能用上传类/控件,BEAN!  
    只能在里写!  
    html文件:  
    <html>  
    <head>  
    <title>Title  here!</title>  
    </head>  
    <body>  
    <form  ACTION="zq.jsp"  enctype="MULTIPART/FORM-DATA"  MATHOD="post"  >  
    <input  type="file"  name="file"  value="filename">  
    <input  type="submit"  value="上载">  
    </form>  
    </body>  
    </html>  
     
    zq.JSP文件:  
    PrintWriter  pw=new  PrintWriter(new  BufferedWriter(new  FileWriter("zqjsp.txt")));  
    //ServletInputStream  in=request.getInputStream();//这种方法与一下句的方法我都试过!不好用!  
    DataInputStream  in  =  new  DataInputStream(request.getInputStream());  
    int  i=in.read();  
    while(i!=-1)  
    {  
    pw.print(i);  
    i=in.read();  
    }  
    pw.close();
      

  9.   

    有高手可以分析下,
    各种流的区别吗??
    PrintWriter
    FilterOutputStream
    DataOutputStream
    以及它们的相应输入流!!!
    分别列举出,用它来实现 : 
    无格式文件(如,txt文件)上传
    格式文件(如 doc文档)
    或是图片,或是视频文件上传的优缺点???