`
Algernoon
  • 浏览: 23625 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

从服务器下载图片保存到本地磁盘中

 
阅读更多

在做OCR时,我们会从服务器下载验证码图片,可以通过把验证码图片下载到本地保存起来使用。

以下是下载图片的实现:

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

public class Test {
	public static final String URL_PATH = "http://member.0256.cn/Include/ASPX/CheckCode.aspx?rnd=0.7748341448605061"; // 实例图片,实际开发中可能是获得服务器上的所有图片,或者部分图片,不可能是具体某一张图片

	// 把从服务器获得图片的输入流InputStream写到本地磁盘
	public static void saveImageToDisk() {
		InputStream inputStream = getInputStream();
		byte[] data = new byte[1024];
		int len = 0;
		FileOutputStream fileOutputStream = null;
		try {
			fileOutputStream = new FileOutputStream("F:\\checkCode.jpg");
			while ((len = inputStream.read(data)) != -1) {
				fileOutputStream.write(data, 0, len);
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			if (inputStream != null) {
				try {
					inputStream.close();
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
			if (fileOutputStream != null) {
				try {
					fileOutputStream.close();
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
	}

	// 从服务器获得一个输入流(本例是指从服务器获得一个image输入流)
	public static InputStream getInputStream() {
		InputStream inputStream = null;
		HttpURLConnection httpURLConnection = null;
		try {
			URL url = new URL(URL_PATH);
			httpURLConnection = (HttpURLConnection) url.openConnection();
			// 设置网络连接超时时间
			httpURLConnection.setConnectTimeout(3000);
			// 设置应用程序要从网络连接读取数据
			httpURLConnection.setDoInput(true);
			httpURLConnection.setRequestMethod("GET");
			int responseCode = httpURLConnection.getResponseCode();
			if (responseCode == 200) {
				// 从服务器返回一个输入流
				inputStream = httpURLConnection.getInputStream();
				System.out.println(inputStream + "**********************");
			}
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return inputStream;
	}

	public static void main(String args[]) {
		// 从服务器端获得图片,保存到本地
		saveImageToDisk();
//		File file = new File(
//				"C://Program Files//Apache Software Foundation//Tomcat 6.0//webapps//plpwmanagers//DpImg//"); // 得到服务器上DpImg文件下所有图片
//		String test[];
//		test = file.list(); // 将每张图片依次存放到 test 数组中
//
//		System.out.println(test.length);
//		for (int i = 0; i < test.length; i++) {
//			System.out.println(test[i]);
//		}
	}
}

 

分享到:
评论

相关推荐

    android从服务器端下载图片并保存在本地sdcard里并在界面滚动显示出来

    在Android开发中,从服务器端下载图片并保存到本地SD卡是常见的需求,尤其是在构建一个包含大量图片的应用,如新闻阅读、社交应用或者电商应用。这个过程涉及到网络请求、文件操作以及UI显示等多个方面。以下将详细...

    基于jsp的代码,关于如何把图片上传到硬盘

    本教程将探讨如何使用Java Server Pages (JSP) 技术来实现这个功能,将图片从客户端上传到服务器的硬盘上。JSP是Java平台上的一个动态网页技术,它允许我们混合HTML、CSS和Java代码来创建交互式的网页应用。 首先,...

    javascript实现将文件保存到本地方法汇总

    在图片元素的onclick事件中调用SaveAs5函数,并将图片的src作为参数传入,实现点击图片即保存图片到本地的功能。同时,也展示了将此功能应用于a标签的href属性,用户点击链接时触发图片的下载。 以上内容详细说明了...

    远程图片保存到本地硬盘已更新

    远程复制图片文件到本地磁盘 注:主要用于学校等单位集中管理用户照片的这种情况,一般来说,学生的照片存储在服务器的某个目录下,可能是依据某些关键字段来命名的,如学生的“学号”、“身份证号”等来命名,形成...

    下载网络图片 (整合多线程、内存缓存、本地文件缓存~)

    通过将下载过的图片存储在本地,下次再次需要同一图片时,可以直接从本地读取,无需再次发起网络请求。Android提供了SQLite数据库、内部存储和外部存储等途径来保存文件。使用File类创建文件夹,再配合AsyncTask进行...

    java上传图片至服务器并且返回下载URL

    2. **文件存储**:服务器接收到文件后,需要将其保存到本地磁盘或云存储服务。如果选择本地存储,要确保文件安全性和资源管理,比如使用临时目录、限制文件大小等。如果是云存储,如阿里云OSS、AWS S3,需要使用对应...

    C#实现把图片下载到服务器代码

    1. 文件下载的基本原理:在C#中,文件下载通常是通过网络协议(如HTTP、FTP等)从远程服务器获取文件数据,并将其写入本地磁盘的过程。这需要使用到.NET框架提供的网络通信类库,如***.WebClient类。 2. WebClient...

    使用Servlet+jQuery实现读取本地硬盘图片

    【标题】"使用Servlet+jQuery实现读取本地硬盘图片"涉及的主要知识点是Web开发中的服务器端处理和客户端交互。在Web应用中,Servlet是Java语言用于处理HTTP请求的重要组件,而jQuery则是一种广泛使用的JavaScript库...

    android实现本地图片上传服务器

    在Struct2中,可以创建一个Action处理图片上传请求,将图片保存到服务器并返回响应。 5. **安全考虑**:为了防止恶意攻击,如大文件上传或DDoS,应限制上传文件的大小,并进行必要的验证,如检查文件类型是否合法。...

    Python爬虫获取图片并下载保存至本地的实例

    `save_imgs`函数负责将获取到的图片资源下载并保存到本地磁盘。这里使用了二进制读写模式打开文件,通过url_open函数读取图片数据,然后写入本地文件。文件名是通过分割URL字符串的最后一部分获得。整个过程涉及到了...

    java swing opencv调用摄像头实现拍照及本地保存支持上传FTP路径配置

    在本文中,我们将深入探讨如何使用Java Swing和OpenCV库来调用摄像头,实现拍照功能,并将拍摄的照片本地保存以及支持上传至FTP服务器。通过理解并应用这些知识点,你可以创建一个用户友好的桌面应用程序,方便地...

    c# 将webform的图片另存为(本机或服务器硬盘上)

    在C# WebForm应用中,将图片保存到本地或服务器硬盘是一个常见的需求,尤其是在处理用户上传的图片或从网络获取的图片资源时。本文将详细解析如何利用C#实现这一功能,包括理解代码逻辑、HTTP响应头的作用以及如何...

    SSM上传文件到本地和云里面

    本文将详细介绍如何利用SSM框架实现文件上传功能,包括将文件存储到本地服务器以及上传至云端服务。 首先,我们需要在SpringMVC的配置中开启MultipartResolver支持,以处理文件上传。在`dispatcher-servlet.xml`或...

    android 上传和下载图片

    本文将详细讲解如何在Android中实现图片的选取、上传至服务器以及从服务器下载图片,并将其存储到MySQL数据库的过程。 首先,我们需要处理图片的选取。Android提供了多种方式让用户选择图片,如使用系统的相册或...

    Java Socket传输图片源代码

    - 一旦连接建立,服务器端创建一个`FileInputStream`读取图片文件,然后将读取到的数据通过`Socket`的输出流发送到客户端。 - 客户端创建`FileOutputStream`,接收来自服务器的输入流数据,并将其写入本地文件,...

    HttpWebRequest实现下载图片至本地

    在文章《HttpWebRequest实现下载图片至本地》中,作者详细介绍了如何利用HttpWebRequest下载图片并保存到本地磁盘的过程,这对于初学者来说是一个很好的学习资料。 首先,文章提供了HttpWebRequest发送web请求的...

    pb上传文件到服务器硬盘上

    本文将详细介绍如何利用PowerBuilder(简称PB)这一开发工具,实现文件从本地上传到服务器硬盘的过程,并重点讲解几种常用的方法:批处理脚本、InternetTransfer控件以及Mabry Internet FTP/X Control组件。...

    VC 下载网页上的图片

    对于图片下载,这些数据通常是二进制格式的图像文件,我们需要将其保存到本地磁盘。 3. **文件操作**:在VC++中,我们可以使用`fopen`、`fwrite`和`fclose`等函数进行文件操作。创建一个文件,使用`fwrite`将从网络...

    图片从本地上传服务端

    总之,从本地上传图片到服务端是一个涉及前端与后端交互的过程,需要处理文件选择、数据转换、网络传输和服务器存储等多个环节。"ImageUploadServer"类是这个过程中服务端的核心组件,负责接收和处理图片上传请求,...

    python-23:将图片下载到本地.docx

    2. **`urllib.urlretrieve()`函数**:这是一个非常实用的函数,可以用来下载网络资源并将其保存到本地磁盘。它有两个主要参数: - `url`:需要下载的图片的URL地址。 - `filename`:下载后保存的文件名及路径。...

Global site tag (gtag.js) - Google Analytics