当前位置: 代码迷 >> J2EE >> httpclient写文件下载程序,该怎么解决
  详细解决方案

httpclient写文件下载程序,该怎么解决

热度:208   发布时间:2016-04-22 03:14:53.0
httpclient写文件下载程序
想下载http://202.120.96.77/dataViewPage/getView.aspx?codeid=Y1里的pdf文件
总是不成功,哪位大哥帮改改

Java code
import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.HttpException;import org.apache.commons.httpclient.methods.PostMethod;public class HttpClientTest {    private final static String REMOTE_FILE_URL = "http://202.120.96.77/dataViewPage/getFile.aspx?filename=GB-T 1.1-2000.pdf";    private final static int BUFFER = 1024;    public static void main(String[] args) {        HttpClient client = new HttpClient();        PostMethod httpGet = new PostMethod(REMOTE_FILE_URL);        try {            client.executeMethod(httpGet);            InputStream in = httpGet.getResponseBodyAsStream();                        FileOutputStream out = new FileOutputStream(new File("E:\\GB-T 1.1-2000.pdf"));            byte[] b = new byte[BUFFER];            int len = 0;            while ((len = in.read(b)) != -1) {                out.write(b, 0, len);            }            in.close();            out.close();        } catch (HttpException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        } finally {            httpGet.releaseConnection();        }        System.out.println("download, success!!");    }}


------解决方案--------------------
绑定,给分
------解决方案--------------------
Java code
public static void main(String[] args) {        HttpClient client = new HttpClient();        PostMethod httpGet = new PostMethod(REMOTE_FILE_URL);        try {            client.executeMethod(httpGet);            InputStream in = httpGet.getResponseBodyAsStream();                        FileOutputStream out = new FileOutputStream(new File("E:\\GB-T 1.1-2000.pdf"));            byte[] b = new byte[BUFFER];            int len = 0;            while ((len = in.read(b)) != -1) {                out.write(b, 0, len);                out.flush();//注意要清空流            }        } catch (HttpException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        } finally {            try{             in.close();            }catch(Exception e){             e.printStackTrace();            }            try{             out.close();            }catch(Exception e){             e.printStackTrace();            }                        httpGet.releaseConnection();        }        System.out.println("download, success!!");    }
------解决方案--------------------
探讨
out.flush();//注意要清空流

------解决方案--------------------
学习。。。
------解决方案--------------------
java + js
  相关解决方案