在做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开发中,从服务器端下载图片并保存到本地SD卡是常见的需求,尤其是在构建一个包含大量图片的应用,如新闻阅读、社交应用或者电商应用。这个过程涉及到网络请求、文件操作以及UI显示等多个方面。以下将详细...
本教程将探讨如何使用Java Server Pages (JSP) 技术来实现这个功能,将图片从客户端上传到服务器的硬盘上。JSP是Java平台上的一个动态网页技术,它允许我们混合HTML、CSS和Java代码来创建交互式的网页应用。 首先,...
在图片元素的onclick事件中调用SaveAs5函数,并将图片的src作为参数传入,实现点击图片即保存图片到本地的功能。同时,也展示了将此功能应用于a标签的href属性,用户点击链接时触发图片的下载。 以上内容详细说明了...
远程复制图片文件到本地磁盘 注:主要用于学校等单位集中管理用户照片的这种情况,一般来说,学生的照片存储在服务器的某个目录下,可能是依据某些关键字段来命名的,如学生的“学号”、“身份证号”等来命名,形成...
通过将下载过的图片存储在本地,下次再次需要同一图片时,可以直接从本地读取,无需再次发起网络请求。Android提供了SQLite数据库、内部存储和外部存储等途径来保存文件。使用File类创建文件夹,再配合AsyncTask进行...
2. **文件存储**:服务器接收到文件后,需要将其保存到本地磁盘或云存储服务。如果选择本地存储,要确保文件安全性和资源管理,比如使用临时目录、限制文件大小等。如果是云存储,如阿里云OSS、AWS S3,需要使用对应...
1. 文件下载的基本原理:在C#中,文件下载通常是通过网络协议(如HTTP、FTP等)从远程服务器获取文件数据,并将其写入本地磁盘的过程。这需要使用到.NET框架提供的网络通信类库,如***.WebClient类。 2. WebClient...
【标题】"使用Servlet+jQuery实现读取本地硬盘图片"涉及的主要知识点是Web开发中的服务器端处理和客户端交互。在Web应用中,Servlet是Java语言用于处理HTTP请求的重要组件,而jQuery则是一种广泛使用的JavaScript库...
在Struct2中,可以创建一个Action处理图片上传请求,将图片保存到服务器并返回响应。 5. **安全考虑**:为了防止恶意攻击,如大文件上传或DDoS,应限制上传文件的大小,并进行必要的验证,如检查文件类型是否合法。...
`save_imgs`函数负责将获取到的图片资源下载并保存到本地磁盘。这里使用了二进制读写模式打开文件,通过url_open函数读取图片数据,然后写入本地文件。文件名是通过分割URL字符串的最后一部分获得。整个过程涉及到了...
在本文中,我们将深入探讨如何使用Java Swing和OpenCV库来调用摄像头,实现拍照功能,并将拍摄的照片本地保存以及支持上传至FTP服务器。通过理解并应用这些知识点,你可以创建一个用户友好的桌面应用程序,方便地...
在C# WebForm应用中,将图片保存到本地或服务器硬盘是一个常见的需求,尤其是在处理用户上传的图片或从网络获取的图片资源时。本文将详细解析如何利用C#实现这一功能,包括理解代码逻辑、HTTP响应头的作用以及如何...
本文将详细介绍如何利用SSM框架实现文件上传功能,包括将文件存储到本地服务器以及上传至云端服务。 首先,我们需要在SpringMVC的配置中开启MultipartResolver支持,以处理文件上传。在`dispatcher-servlet.xml`或...
本文将详细讲解如何在Android中实现图片的选取、上传至服务器以及从服务器下载图片,并将其存储到MySQL数据库的过程。 首先,我们需要处理图片的选取。Android提供了多种方式让用户选择图片,如使用系统的相册或...
- 一旦连接建立,服务器端创建一个`FileInputStream`读取图片文件,然后将读取到的数据通过`Socket`的输出流发送到客户端。 - 客户端创建`FileOutputStream`,接收来自服务器的输入流数据,并将其写入本地文件,...
在文章《HttpWebRequest实现下载图片至本地》中,作者详细介绍了如何利用HttpWebRequest下载图片并保存到本地磁盘的过程,这对于初学者来说是一个很好的学习资料。 首先,文章提供了HttpWebRequest发送web请求的...
本文将详细介绍如何利用PowerBuilder(简称PB)这一开发工具,实现文件从本地上传到服务器硬盘的过程,并重点讲解几种常用的方法:批处理脚本、InternetTransfer控件以及Mabry Internet FTP/X Control组件。...
对于图片下载,这些数据通常是二进制格式的图像文件,我们需要将其保存到本地磁盘。 3. **文件操作**:在VC++中,我们可以使用`fopen`、`fwrite`和`fclose`等函数进行文件操作。创建一个文件,使用`fwrite`将从网络...
总之,从本地上传图片到服务端是一个涉及前端与后端交互的过程,需要处理文件选择、数据转换、网络传输和服务器存储等多个环节。"ImageUploadServer"类是这个过程中服务端的核心组件,负责接收和处理图片上传请求,...
2. **`urllib.urlretrieve()`函数**:这是一个非常实用的函数,可以用来下载网络资源并将其保存到本地磁盘。它有两个主要参数: - `url`:需要下载的图片的URL地址。 - `filename`:下载后保存的文件名及路径。...