android通过base64encode方式发送图片到服务端
来源:互联网 发布:js获取class属性值 编辑:程序博客网 时间:2024/05/19 20:49
androidAndroidANDROID
android 前提是引入base64encode,base64decode六个开源类
- package com.example.testapp;
- import java.io.ByteArrayInputStream;
- import java.io.ByteArrayOutputStream;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import android.app.Activity;
- import android.graphics.Bitmap;
- import android.os.Bundle;
- import android.os.Environment;
- public class MainActivity extends Activity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- System.out.println("path---->"+Environment.getExternalStorageDirectory().getPath());
- File file = new File(Environment.getExternalStorageDirectory().getPath()+"//qq.jpg");
- InputStream in = null;
- byte[] data = null;
- // 读取图片字节数组
- try {
- in = new FileInputStream(file);
- data = new byte[in.available()];
- in.read(data);
- in.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- // 对字节数组Base64编码
- BASE64Encoder encoder = new BASE64Encoder();
- System.out.println("drf--------"+encoder.encode(data));// 返回Base64编码过的字节数组字符串
- }
- private InputStream Bitmap2Bytes(Bitmap bmp) {
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- // 得到输出流
- bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos);
- // 转输入流
- InputStream isBm = new ByteArrayInputStream(baos.toByteArray());
- return isBm;
- }
- }
server
- package com.dong.test.binaryimage;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.OutputStream;
- import sun.misc.BASE64Decoder;
- import sun.misc.BASE64Encoder;
- public class TestLUcky {
- public static void main(String[] args) {
- String strImg = GetImageStr();
- System.out.println(strImg);
- GenerateImage(strImg);
- }
- public static String GetImageStr() {// 将图片文件转化为字节数组字符串,并对其进行Base64编码处理
- String imgFile = "c:\\qq.jpg";// 待处理的图片
- InputStream in = null;
- byte[] data = null;
- // 读取图片字节数组
- try {
- in = new FileInputStream(imgFile);
- data = new byte[in.available()];
- in.read(data);
- in.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- // 对字节数组Base64编码
- BASE64Encoder encoder = new BASE64Encoder();
- return encoder.encode(data);// 返回Base64编码过的字节数组字符串
- }
- public static boolean GenerateImage(String imgStr) {// 对字节数组字符串进行Base64解码并生成图片
- if (imgStr == null) // 图像数据为空
- return false;
- BASE64Decoder decoder = new BASE64Decoder();
- try {
- // Base64解码
- byte[] b = decoder.decodeBuffer(imgStr);
- for (int i = 0; i < b.length; ++i) {
- if (b[i] < 0) {// 调整异常数据
- b[i] += 256;
- }
- }
- // 生成jpeg图片
- String imgFilePath = "c:\\qq.bak.jpg";// 新生成的图片
- OutputStream out = new FileOutputStream(imgFilePath);
- out.write(b);
- out.flush();
- out.close();
- return true;
- } catch (Exception e) {
- return false;
- }
- }
- }
0 0
- android通过base64encode方式发送图片到服务端
- android通过base64encode方式发送图片到服务端
- 通过TCP/IP协议发送图片到服务端
- Python服务端,通过TCP发送一张图片给Android客户端,客户端把图片显示出来
- 通过webservice 将图片发送到Android客户端
- Android摄像头采集的视频数据流如何通过Socket实时发送到目标服务端
- Android发送图片到指定邮箱(仅客户端简单实现,不需服务端配合)
- android发送json数据到服务端
- Android通过http协议POST传输方式(输出流提交到服务端)
- Android 图片发送到服务器
- android端上传图片到服务端
- http的post方式连接服务器,发送数据到服务端,并获取服务端的数据
- Android使用HttpURLConnection发送Post请求到服务端
- 通过命令发送按键到Android系统
- android上客户端到服务端通过Entity传送数据
- android上传图片到javaweb服务端,android+和struts2
- 通过POST方式发送数据到远程服务器
- 通过libcurl向服务端发送数据的2种方式:get/post
- FGPA实现串转并,同时对数据打包的模块
- 防止自己制作的光盘被其他用户复制的办法
- Oracle Database 11g: 面向 DBA 和开发人员的重要新特性 - PL/SQL 性能
- 读取文件数据的编程出现的问题
- emacs操作
- android通过base64encode方式发送图片到服务端
- Windows XP 自带分区工具的使用办法
- 简介各个电商网站特点成功点
- css经典问题
- NSAttributedString使一个字符串显示的多样化
- 分析三星的uboot中的fdisk功能
- GHOST装系统时出现A:\GHOSTERR.TXT错误提示分析及解决办法
- Codeforces Round #237 (Div. 2) C
- 生成时间格式加随机四位数的数字组合