`
随便小屋
  • 浏览: 105962 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Java 打开URL链接,并下载URL中的文件

 
阅读更多

Java 小程序,打开Url中的链接,并下载链接中所保存的文件。其中利用了common-io.jar中的FileUtils.copyURLToFile(url, file)方法,jar包在附件中。

 

 

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

import org.apache.commons.io.FileUtils;

/**
 * 访问Url中的路径,并下载Url中所包含的文件
 * 类功能是先从test.txt中读出一个字符串,然后拼接到URl路径中,
 * 再将此路径中的文件保存
 * @author Logic
 * @email logicluo@foxmail.com
 */
public class AccessURLAndDownloadFile {

	public static void main(String[] args) {
		
		//输入文件的地址
		String fileDir = "D:/test/test.txt";
		
		List<String> fileNameList = readFileToList(fileDir);
		
		for (int i=0; i<fileNameList.size(); i++) {
			String fileName = fileNameList.get(i);
			
			//保存当地文件位置
			String localDir = "D:/test/";
			
			downloadFileFromURL("http://string-db.org/api/tsv/resolve?identifier=" + fileName + "&species=9606 ", localDir, fileName);
		}
	}
	
	/**
	 * 将文件中的内容入读到一个List中
	 * @param fileName
	 * @return
	 */
	public static List<String> readFileToList(String fileName) {
		List<String> fileNameList = new ArrayList<String>();
		FileInputStream fileInputStream = null;
		InputStreamReader inputStreamReader = null;
		BufferedReader bufferedReader = null;
		
		try {
			fileInputStream = new FileInputStream(fileName);
			inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8");
			bufferedReader = new BufferedReader(inputStreamReader);
			String line = null;
			while((line = bufferedReader.readLine()) != null) {
				fileNameList.add(line.trim());
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		if(bufferedReader != null) {
			try {
				bufferedReader.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		
		/**
		 * 关闭打开的各种流
		 */
		if(inputStreamReader != null) {
			try {
				inputStreamReader.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		
		if(fileInputStream != null) {
			try {
				fileInputStream.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		return fileNameList;
	}
	
	/**
	 * 从URL下载文件
	 * @param url 下载文件的路径
	 * @param file 下载文件的名称
	 * @param dirLocation 保存下载文件的位置
	 * @return
	 */
	public static String downloadFileFromURL(String url, String dirLocation, String fileName) {
		try {
			URL httpUrl = new URL(url);
			File file = new File(dirLocation + fileName);
			file.createNewFile();
			FileUtils.copyURLToFile(httpUrl, file);
			System.out.println("下载文件 " + fileName + "成功!");
		} catch (Exception e) {
			e.printStackTrace();
			System.out.println("下载文件 " + fileName + "失败!");
		}
		return null;
	}

}

 

0
1
分享到:
评论

相关推荐

    Java调用浏览器打开URL地址

    本篇将详细介绍如何使用Java来调用浏览器打开URL地址。 首先,Java提供了`Desktop`类,它是`java.awt.Desktop`包的一部分,可以用来与用户的桌面环境进行交互,包括打开浏览器、编辑文件、打印文档等。以下是一个...

    java URL转PDF文件

    在Java编程环境中,将一个URL链接的内容转换为PDF文件是一个常见的需求,这通常涉及到网络请求、HTML解析以及PDF生成等多个步骤。以下是一个详细的步骤指南,涵盖了这个过程中的关键知识点: 首先,我们需要处理URL...

    java使用HttpClient通过url下载文件到本地

    在Java编程环境中,HttpClient库是Apache HTTP Components项目的一部分,它为开发者提供了强大的HTTP客户端功能,可以...通过理解HttpClient的工作原理和提供的API,开发者可以构建出稳定、高效的文件下载解决方案。

    java URL转PDF文件(完美支持中文)

    在Java编程环境中,将URL内容转换为PDF文件是一项常见的需求,尤其在数据抓取、文档保存或自动化报告生成等场景中。"java URL转PDF文件(完美支持中文)"的主题着重于如何利用Java库来实现这一功能,并且确保中文字符...

    通过url获取网络位置上的文件流

    总结来说,Java中通过URL获取网络位置上的文件流涉及创建URL对象,建立连接,打开输入流,处理数据并关闭流。这个过程可以封装到工具类中,方便在不同场景下复用。在实际编程中,还需要考虑错误处理和性能优化。

    java通过url在线预览Word、excel、ppt、pdf、txt文档

    本文将详细介绍如何使用Java通过URL来在线预览这些类型的文档,并提取其文本内容。 #### 二、关键技术点 1. **HTTP连接管理**:使用`URL`类创建连接,通过`HttpURLConnection`进行资源的获取。 2. **文档解析库**...

    java访问https网址下载文件(含证书)

    在Java编程中,访问HTTPS网址并下载文件是一个常见的任务,特别是在需要安全传输敏感数据或确保数据完整性时。这里我们将深入探讨如何使用Java 1.7版本处理这一过程,包括处理SSL证书。 首先,理解HTTPS(超文本...

    java获取百度网盘真实下载链接的方法

    `HttpRequest`类中的`getData`方法就是一个简单的HTTP GET请求示例,它创建了一个`URL`对象,然后通过`openConnection()`方法打开与该URL的连接,并设置请求方法为GET。接着,设置输入和输出流,通过`getInputStream...

    java下载文件到指定路径(不打开窗口)

    本文档主要介绍如何使用Java编程语言实现从网络上下载文件并将其保存至本地指定路径的功能,且在执行过程中不会弹出任何用户界面窗口。这种方法非常适合后台服务或自动化脚本场景。 #### 核心知识点详解 1. **URL...

    Java Servlet实现在浏览器中打开pdf文件

    总的来说,通过Java Servlet,我们可以方便地处理文件下载和在线预览的需求,无论是PDF还是其他类型的文件。在实际应用中,还需要考虑文件安全、权限控制、错误处理等复杂情况,确保服务的稳定性和安全性。

    【JavaScript源代码】Vue通过阿里云oss的url连接直接下载文件并修改文件名的方法.docx

    前端通过创建并提交表单将文件名和URL传递给后台,而后台则负责处理实际的文件下载,包括设置正确的HTTP响应头来指定新的文件名。这个方法有效地解决了通过URL直接下载文件并重命名的问题,尤其适用于阿里云OSS这样...

    JAVA线程根据给定URL生成网页快照

    例如,我们可以创建一个`URL`对象并打开到该URL的连接,然后读取响应的输入流来获取HTML内容: ```java URL url = new URL("http://example.com"); HttpURLConnection connection = (HttpURLConnection) url.open...

    调用URL下载并显示PDF文件

    在Android开发中,有时我们需要实现从远程URL下载PDF文件并将其在用户设备上显示的功能。这个过程涉及到网络请求、文件处理以及用户界面的构建。在这个场景下,我们可以使用`Android Studio`作为集成开发环境,结合`...

    java使用itext实现pdf文件下载

    在Java开发中,生成和处理PDF文档是一项常见的需求。Itext是一个强大的库,它允许开发者在Java环境中创建、编辑和修改PDF文档...通过实践和理解这些示例,你将能够熟练地在Java项目中运用Itext处理PDF文件的下载需求。

    java+jsp 文件下载(服务器上的文件)

    在Java和JSP中,实现文件下载是一项常见的任务,它涉及到服务器与客户端之间的交互,以及对文件流的处理。下面将详细讲解如何使用Java和JSP来实现这一功能。 首先,我们从`downloadtool.jsp`开始,这是一个用户界面...

    java 使用URL访问网页

    `Java.jpg`文件可能是一个示例图片,用于说明网络请求在实际项目中的应用,例如从服务器下载图片并显示在用户界面上。 总之,Java通过`java.net.URL`和相关类提供了强大的网络访问能力,能够满足各种网络编程需求。...

    java实现文件下载

    在Java开发中实现文件下载功能是一项常见需求,尤其是在Web应用中。文件下载功能涉及到客户端与服务器端之间的交互,服务器需要将文件内容发送给客户端浏览器,然后由浏览器负责保存或打开该文件。Java Web开发中...

    Java配置文件链接数据库

    Java配置文件链接数据库是Java应用程序中常见的做法,它允许我们分离数据库连接的详细信息,如URL、用户名和密码,从代码中,使得程序更易于维护和管理。这种方式使用了Java Database Connectivity (JDBC) API,这是...

    url获取的java源代码

    本示例的"GetURL.java"文件可能包含了获取网页HTML内容,然后从中提取出链接URL的功能。 5. **HTML解析**: 要从HTML文档中提取URL,通常需要解析HTML。Java有多种库可用于解析HTML,如Jsoup,它提供了方便的方法...

    根据url获取网络图片通过浏览器下载的java解决方案

    解决chrome浏览器中点击链接,如果是浏览器可识别的文件类型,浏览器会自动打开而不是弹出下载框的方案

Global site tag (gtag.js) - Google Analytics