一个简单的应用
package com.bj95ol.test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class SendImgToWeb {
/**
* 获得网络图片地址。或者图片地址
* @param url
* @return
*/
public String getContentFromWeb(String url)
{
String filecontent="";
InputStream is=null;
BASE64Encoder base=new BASE64Encoder();
if(url.startsWith("http"))
{
try {
HttpURLConnection urlconn=(HttpURLConnection)new URL(url).openConnection();
is=urlconn.getInputStream();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
int n=0;
byte[] b=null;
try {
while((n=is.available())>0)
{
n=is.read(b);
if(n==-1)break;
filecontent=filecontent+base.encode(b);
}
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return filecontent;
}
/**
* 将图片内容用post方式发送到url中
* @param url
* @param postcontent
*/
public void sendImgbyPost(String url,String postcontent)
{
try {
HttpURLConnection huc=(HttpURLConnection)new URL(url).openConnection();
huc.setDoInput(true);
huc.setDoOutput(true);
huc.setRequestMethod("POST");
PrintWriter pw=new PrintWriter(new OutputStreamWriter(huc.getOutputStream()));
pw.print(postcontent);
pw.close();
BufferedReader br=new BufferedReader(new InputStreamReader(huc.getInputStream()));
String content="";
String line=br.readLine();
while(line!=null)
{
content=content+line;
line=br.readLine();
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 在服务器端获取发送过来的内容
* @param request
* @return
*/
public String receiveContent(HttpServletRequest request)
{
int a = 0;
byte[] b = new byte[4096];
String result="";
try
{
ServletInputStream sis=request.getInputStream();
int line=sis.readLine(b, 0, b.length);
while(line!=-1)
{
result=result+new String(b,0,line);
line=sis.readLine(b, 0, b.length);
}
}
catch(Exception e)
{
e.printStackTrace();
}
return result;
}
/**
* 将接受过来的信息生成文件
* @param request
* @param filename
*/
public void createFile(HttpServletRequest request,String filename)
{
File file=new File(filename);
try {
FileOutputStream fos=new FileOutputStream(file);
String content=receiveContent(request);
BASE64Decoder base=new BASE64Decoder();
byte[] b=base.decodeBuffer(content);
fos.write(b);
fos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
是
分享到:
相关推荐
本知识点聚焦于使用易语言进行POST方式的图片上传操作,这是一种常见的网络数据传输方法,尤其在网页表单提交、文件上传等场景中广泛应用。 在Web开发中,POST请求常用于向服务器发送数据,包括文本、图片等各种...
用户在应用中选择本地图片后,应用会获取到图片的本地路径。然后,应用将图片文件转换为字节流(Byte Stream),通过HTTP协议发送到服务器。服务器端接收这个字节流,将其保存到指定的存储位置,通常是文件系统或者...
在JavaScript中,本地图片的预览和上传到服务器是一个常见的需求,特别是在Web应用中,比如社交媒体、博客编辑器或者在线图像处理工具。本项目着重于实现这个功能,提供了源码和工具来帮助开发者轻松实现这一过程。...
本主题聚焦于使用易语言实现通过POST方法向百度上传图片的功能。在互联网编程中,POST请求常用于向服务器发送数据,比如上传文件。下面将详细阐述这一过程涉及的关键知识点。 1. **HTTP协议与POST请求**: - HTTP...
在C# WinForm应用开发中,上传照片到服务器是一个常见的需求,这涉及到客户端与服务器之间的文件传输技术。本文将深入探讨如何实现这个功能,以及如何根据要求修改照片的名字。 首先,我们需要了解C#中的文件操作...
3. **文件保存**:接收到图片后,服务器需要将其保存到磁盘。可以使用Java的I/O流操作,如`FileOutputStream`。 4. **Struct2框架**:如果使用Struct2,它是一个基于MVC模式的Web应用程序框架,可以帮助组织服务器...
这里我们探讨的是如何利用Java和layui插件实现这些功能,并通过POST方法将数据提交到服务端。layui是一款流行的前端UI框架,它提供了丰富的组件,包括图片上传等。以下是关于这个主题的详细知识点: 1. **图片上传*...
在JavaScript中实现图片上传到服务器的过程通常涉及到前端的文件选取、本地预览、Base64编码,以及与后端服务器的交互。以下是对这个过程的详细解析: 1. **前端文件选取**: - HTML部分提供了`...
在VB(Visual Basic)编程中,上传本地文件到服务器是一个常见的任务,特别是在开发Web应用程序时。这个过程涉及客户端(用户计算机)与服务器之间的数据交互,通常通过HTTP协议完成。以下是对这一主题的详细阐述: ...
首先,我们要理解“本地图片上传”指的是用户在自己的设备(本地)上选择图片,然后通过网页或应用程序将其传输到服务器的过程。这个过程通常分为以下几个步骤: 1. **选择图片**:用户通过点击“选择文件”或...
本示例主要涉及的是如何使用cropper工具裁剪图片,然后将裁剪后的图片以Base64编码的形式上传到服务器,并最终保存在本地。以下是这个过程的详细解释。 1. **什么是Cropper**: Cropper是一款强大的JavaScript图片...
upload_handler`中,我们创建了一个新的XMLHttpRequest对象,设置了`withCredentials`为`false`以防止跨域问题,然后定义了`open`和`send`方法来发起POST请求,将图片文件作为FormData对象的一部分发送到服务器。...
在服务器端,我们需要处理这个请求,读取上传的文件,然后保存到本地磁盘或者云存储服务。在这个过程中,`upload_click`函数通常是在服务器端触发的事件处理器,它会响应用户的上传请求。 1. **前端准备**: - ...
这个例子可能包含一个简单的HTML表单,用于选择本地的图片文件并将其发送到服务器进行存储。下面我们将深入探讨这一过程涉及的关键知识点。 1. **HTML表单**:HTML中的`<form>`元素是数据提交的基础。创建一个允许...
在Android应用开发中,将本地图片上传到服务器是一项常见的任务,尤其在社交、电商或个人云存储类应用中。这个“Android上传图片到服务器”的小demo涵盖了这一过程的关键步骤,让我们一起深入了解一下。 首先,我们...
在Java开发中,将图片上传到服务器并返回可下载的URL是常见的功能需求,尤其在Web应用中。这里我们将详细探讨实现这一功能的关键步骤和技术点。 首先,客户端(通常是前端应用)需要通过HTTP请求将图片文件发送到...
使用OkHttp上传图片时,需要创建一个RequestBody对象,将图片文件转换为RequestBody,然后在Request中设置这个RequestBody,最后通过OkHttpClient发送POST请求。 2. **Retrofit**: Retrofit是基于OkHttp的网络请求...
然后,我们读取本地文件并将其添加到内容中,指定文件名以便服务器可以识别。 为了实现“不受大小限制”的文件上传,我们需要确保服务器端的配置允许接收大文件,并在客户端代码中处理大文件流。这可能涉及分块上传...
在Android平台上,将图片上传到服务器是一个常见的任务,涉及到客户端(Android应用)和服务器端(通常为Web服务)的交互。以下将详细讲解这个过程的关键步骤、涉及的技术和注意事项。 一、客户端(Android应用)...
下面将详细介绍如何使用HttpClient进行图片的上传和下载,并探讨如何修改上传和下载的URI。 1. **HttpClient上传图片**: - 首先,我们需要创建一个`HttpPost`对象,设置目标URI,这通常是一个服务器端处理图片...