手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>Java技术>列表

用jsp读远程文件,保存到本地

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

用jsp,读远程文件,保存到本地

读取网络文件有些不一样,我给你一个完整的代码吧,存成jsp就可以直接运行的。
<%@ page import="java.io.*"%>
<%@ page import="java.net.*"%>
<%@ page import="java.util.Properties"%>
<%

//?程文件路径
String s1 = "http://www.google.co.jp";
//本地存放路径
String s2 = "C:\\test.html";

URL urlfile = null;
HttpURLConnection httpUrl = null;
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
File f = new File(s2);

//make proxy
String proxy = "192.168.224.12";
String port = "8080";
Properties systemProperties = System.getProperties();
systemProperties.setProperty("http.proxyHost",proxy);
systemProperties.setProperty("http.proxyPort",port);

try{
//?接指定的网??源,?取网??入流
urlfile = new URL(s1);
httpUrl = (HttpURLConnection)urlfile.openConnection();
httpUrl.connect();
bis = new BufferedInputStream(httpUrl.getInputStream());
}catch(Exception e){
System.out.println(e.toString());
}

try{
bos = new BufferedOutputStream(new FileOutputStream(f));;
byte[] b = new byte[1024];
while(bis.read(b)!=-1) {
bos.write(b);
}
}catch(Exception e){
System.out.println(e.toString());
}finally{
try{
bos.flush();
bis.close();
httpUrl.disconnect();
}catch(Exception e){
System.out.println(e.toString());
}
}

%>
<center>
<form name="search" action="results.jsp" method="get">
<p>
<input name="query" size="44"/>&nbsp;Search Criteria
</p>
<p>
<input name="maxresults" size="4" value="100"/>&nbsp;Results Per Page&nbsp;
<input type="submit" value="Search"/>
</p>
</form>
</center>
其中
//make proxy
String proxy = "192.168.224.12";//防火墙地址
String port = "8080"; //防火墙端口
Properties systemProperties = System.getProperties();
systemProperties.setProperty("http.proxyHost",proxy);
systemProperties.setProperty("http.proxyPort",port);
这一段是如果你的机器设定了防火墙,需要加上,如果是直接连上网,就不用。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!