java在网络上请求地址,都会用到URL url = new URL(urlStr)来定位资源,
然后根据url获得输入流in = url.openStream();从而可以得到网络资源。
以下是一个完整的程序代码:
package com.zakisoft.tools;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.swing.JOptionPane;
public class GetGSInfo {
private static String GOLD_PRICE_URL = "http://www.kitco.cn/cn/live_charts/goldcny.gif";
private static String SILVER_PRICE_URL = "http://www.kitco.cn/cn/live_charts/silvercny.gif";
private static String SAVE_PATH = "D://Glod_Silver//";
private GetGSInfo() {
Date cd = new Date();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String cdstr = df.format(cd);
String glodOutPath = SAVE_PATH + cdstr + "-Glod.gif";
String silverOutPath = SAVE_PATH + cdstr + "-Silver.gif";
getContext(GOLD_PRICE_URL, glodOutPath);
getContext(SILVER_PRICE_URL, silverOutPath);
JOptionPane.showMessageDialog(null, "价格保存完成...");
}
public void getContext(String urlStr, String outPath) {// 获得网络资源并写入指定文件
InputStream in = null;
OutputStream out = null;
try {
// 用streams,存储获得的资源
URL url = new URL(urlStr);
in = url.openStream();
if (outPath == null) {
out = System.out;
} else {
out = new FileOutputStream(outPath);
}
// 用输出流out,输出到指定位置
byte[] buffer = new byte[1024];
int bytes_read;
while ((bytes_read = in.read(buffer)) != -1) {
out.write(buffer, 0, bytes_read);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
in.close();
out.close();
} catch (Exception e) {
}
}
}
public static void main(String[] args) {
new GetGSInfo();
}
}
分享到:
相关推荐
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
### Android如何获得网络资源的大小 在Android应用开发过程中,我们常常需要下载各种类型的网络资源,比如图片、音乐、视频或文档等。为了提供更好的用户体验,开发者通常希望能够在下载前预知这些资源的大小,从而...
总的来说,这个BP神经网络Java实现为理解和实践预测算法提供了一个基础平台,对于学习和研究神经网络算法的开发者来说,是一个有价值的资源。通过深入研究源代码,我们可以更深入地理解BP算法的工作原理,以及如何在...
通过阅读这些资源,Java程序员不仅能增强理论知识,还能获得实践经验,从而在开发过程中游刃有余。"必备的 Java 参考资源列表.htm"很可能包含了上述提到的书籍和其他重要资源的详细信息,建议下载并仔细研究,以便...
java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。 java.net 为实现网络应用程序提供类。 java....
3. **运行状态**:当就绪状态的线程被调度并获得处理器资源时,便进入运行状态。每一个`Thread`类及其子类的对象都有一个重要的`run()`方法,当线程对象被调度执行时,它将自动调用本对象的`run()`方法,从第一句...
在Java编程中,多线程是一项关键技能,尤其在处理并发任务时,如我们的示例——"Java多线程下载网络图片"。这个场景展示了如何利用多线程技术提高程序性能,减少用户等待时间,同时优化系统资源的使用。下面我们将...
在给定的压缩包文件中,有一个名为"用java 如何获得ip.txt"的文本文件,很可能包含了使用Java获取IP的示例代码。通常,这样的代码会展示如何通过`InetAddress`类的上述方法获取IP地址。例如,以下是一个简单的Java...
8. **结束读取**:完成所有数据读取后,记得关闭`IMediaReader`以释放资源。 在实际应用中,你可能需要根据具体需求对这些步骤进行调整,比如添加错误处理,或者优化性能。总的来说,Xuggler为Java开发者提供了一个...
1. 建立连接:使用`HttpURLConnection`类建立与网络资源的连接。 2. 获取输入流:使用`getInputStream()`方法获取网络资源的输入流。 3. 读取输入流:使用`readInputStream()`方法将输入流读取到字节数组中。 4. ...
ArcGIS Runtime SDK for Java 100.12.0 的...如需在生产环境中使用ArcGIS Runtime SDK for Java,请联系ESRI公司获得授权,现在也有国产替代产品GeoScne Runtime SDK for Java,可以联系易智瑞公司获得相关资源和授权。
标题中的“java编的获得html文件的小程序”表明这是一个用Java语言编写的应用程序,它的主要功能是获取HTML文件的内容。这个小程序可能是一个基础的网络爬虫或者网页抓取工具,对于初学者来说,是一个了解Java网络...
无论是初学者还是有一定经验的开发者,都能从Java的学习过程中获得巨大的收获。本文将针对“Java学习视频以及电子书资源”这一主题进行深入探讨,旨在帮助读者更好地理解和利用这些宝贵的资源。 #### 二、Java学习...
这使得Java在处理网络资源定位时非常灵活。 3. 连接管理:对于TCP连接,Java提供了丰富的控制,比如设置超时和保持连接的状态。这使得开发者能够根据自己的应用需求调整网络行为。 四、Java网络协议内幕的进阶知识...
在Java编程语言中,检测本机的服务端口是一项常见的任务,尤其在开发网络应用程序时,我们需要确保特定的端口是否正在被服务或者应用监听。本文将深入探讨如何使用Java来检查本地计算机上运行的服务端口。 首先,...
本资源“Java入门到精通完整教程+源码.zip”提供了一个全面的学习路径,帮助初学者逐步掌握Java编程技能并进阶至精通。下面将详细解析这个压缩包中的学习内容。 首先,"Java1908-master"可能指的是2019年8月的一个...
通过以上学习,你将获得全面的Java开发技能,涵盖Web开发、数据库管理、搜索引擎技术,以及项目实战经验,为你的IT职业生涯奠定坚实基础。提供的下载链接包含了每个阶段的学习视频,是自主学习的良好资源。
### Java网络编程核心知识点 #### 一、网络编程基础与TCP/IP协议 1. **TCP/IP协议概述** TCP/IP(Transmission Control Protocol/Internet Protocol)是互联网的基础协议之一,用于实现不同网络间的通信。该协议...
总的来说,这个Java网络爬虫项目是一个全面的学习资源,无论你是初学者还是有一定经验的开发者,都能从中获得宝贵的经验和技巧。通过深入研究源码和文档,你将能够构建自己的网络爬虫,满足特定的数据抓取需求。