javaIO错误,会的请指点。

2019-03-25 13:39|来源: 网路

public class Test1 {
	private static String getStaticPage(String surl) {
		String htmlContent = "";
		try {
			java.io.InputStream inputStream;
			java.net.URL url = new java.net.URL(surl);
			java.net.HttpURLConnection connection = (java.net.HttpURLConnection) url
					.openConnection();
			connection.connect();
			inputStream = connection.getInputStream();
			byte[] bytes = new byte[1024 * 2000];
			int index = 0;
			int count = inputStream.read(bytes, index, 1024 * 2000);
			while (count != -1) {
				index += count;
				count = inputStream.read(bytes, index, 1);
			}
			htmlContent = new String(bytes, "UTF-8");
			connection.disconnect();
		} catch (Exception ex) {
			ex.printStackTrace();
		}
		return htmlContent.trim();
	}

	public static void main(String[] args) {
		try {
			String src = getStaticPage("http://www.google.com");
			File file = new File("d:\\aa.html");
			FileWriter resultFile = new FileWriter(file);
			PrintWriter myFile = new PrintWriter(resultFile);// 写文件
			myFile.println(src);
			resultFile.close();
			myFile.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

代码出错,有懂得吗?请指点指点。谢谢!
错误信息
java.net.ConnectException: Connection timed out: connect
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.PlainSocketImpl.doConnect(Unknown Source)
	at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
	at java.net.PlainSocketImpl.connect(Unknown Source)
	at java.net.Socket.connect(Unknown Source)
	at java.net.Socket.connect(Unknown Source)
	at sun.net.NetworkClient.doConnect(Unknown Source)
	at sun.net.www.http.HttpClient.openServer(Unknown Source)
	at sun.net.www.http.HttpClient.openServer(Unknown Source)
	at sun.net.www.http.HttpClient.<init>(Unknown Source)
	at sun.net.www.http.HttpClient.New(Unknown Source)
	at sun.net.www.http.HttpClient.New(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
	at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
	at com.oop.test.Test1.getStaticPage(Test1.java:16)
	at com.oop.test.Test1.main(Test1.java:35)

问题补充:
wangqj 写道
这不是io出的错,

而是你用的httpclient连接超时,连不上


那我应该怎样解决呢?谢谢。请指点一下。

问题补充:
wangqj 写道
找到httpclient要连接的地址,直接去命令提示符里面ping一下试试,看看通不通


谢了。

相关问答

更多
  • 我有朋友在那里啊 听说老师很多不错,很有耐心
  • 这个不是错误,你安装的是centos5.2的加强版xen,你安装的时候是不是选了这个选项,将内核升级至加强版,加强版要比普通版本增加一些新的功能,如KVM这些东东,个人玩虚拟机一般情况下用不到,
  • 我看了一下你的博客,问题是这样的: 1。安装redhat 失败的主要原因是你使用的光盘可能有所损坏,所以在安装包的时候,由于读不到需要的内容,报错了,处理办法为重新选择一个安装介质(重新找一套redhat的安装盘)。 2。安装红旗的linux 5失败的主要原因是该系统中缺少你的硬盘驱动,所以没有办法加载到你的硬盘,也许是你选择的OEM版本的缘故吧(因为很多OEM 版本是厂家直接定制的,所以有些驱动以及效果是被剔除掉的,主要目的是为了减少成本),但是可以选择一个相似的替代,但是硬盘的驱动一般来说最好选择于你的 ...
  • yum groupinstall *** 安装组件 yum list 检查yum是否配置好,列出yum源中的rpm包
  • 这种问题要调试,不是靠说。一般你这种需要gdb就可以。有可能是数据类型变化引起的。也可能以前就是错误的,但是错误是潜在的。
  • mysql_pconnect()是永久连接函数,不能被mysql_free_result()关闭,虚拟空间都禁止此函数; mysql_connect()是都在使用的函数,此函数不用释放资源,页面执行完后连接自动关闭。
  • SQL数据库修复的问题一定要用达思SQL数据库修复软件,是全球最棒的SQL数据库修复软件了。而且在数据库修复过程中遇到任何问题,还有数据库修复专家指导。此外,达思数据库修复软件还支持最新的SQL2008,最新更新的1.3版本支持碎片重组功能,即使数据库被覆盖了,也有比较好的解决方案。 找这个软件不难,在百度或谷歌搜索“达思数据库修复软件”即可!
  • SDRAM是第一代内存,大概是7、8年前的,然后出了DDR,也就是DDR一代,在传输速率上有了很大改进,主要流行于4、5年前,接着出了DDR2代,基本上现在都是这个,传输速率比DDR一代提升了5倍左右。你要加内存条,要看你主板支持到几代的内存。 DDRSO估计是SDRAM和DDR之间的中间产品,只存在了很短时间,估计现在买啊买不到
  • 因为这个文件已被系统占用并锁定,除系统外不许其它程序访问