首页 > 其他分享 >android上传base64的字符图片

android上传base64的字符图片

时间:2023-04-30 11:00:35浏览次数:61  
标签:String data base64 params str new android 上传


一般来说,目前在手机端上传图片,方法挺多的,不过常用的就是一个文件流,另一个是二进制转base64的字符流,下面分享一下方法

网络上都是千篇一律的写法,对于上传过程中失败的问题也很少提及,上传失败的bug,主要的原因当然是编码字符的问题了,一般网上都没有介绍,记得要将base64的字符串 转化一下为utf-8,要不然会导致上传失败

Java代码

android上传base64的字符图片_字符串


    
  
1.  
2. public static String httpPostBase64(byte[]  data, String url,String uid,String blog) {   
3.  String str=null;   
4.  try {   
5.  
6.   HttpPost httpRequest = new HttpPost(url);   
7.  
8.     
9.     
10.  
11.  
12.   List params = new LinkedList();   
13.   params.add(new BasicNameValuePair("uid", uid));   
14.   params.add(new BasicNameValuePair("blog", blog));   
15.   if(data!=null){   
16.    String data1 = Base64.encodeToString(data, 0, data.length,Base64.DEFAULT);   
17.    params.add(new BasicNameValuePair("img",URLEncoder.encode(data1,"UTF-8")));   
18.   }   
19.      
20.     
21.  
22.     
23.  
24.   httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));   
25.  
26.     
27.  
28.   HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest);   
29.  
30.     
31.  
32.   if (httpResponse.getStatusLine().getStatusCode() != 200) {   
33.  
34.    Log.d("Code", httpResponse.getStatusLine().toString());   
35.  
36.    return str;   
37.  
38.   }else{   
39.     HttpEntity httpEntity=httpResponse.getEntity();   
40.     str = EntityUtils.toString(httpEntity,"UTF-8");   
41.    System.out.println("-------------------"+str);   
42.   }   
43.  
44.  } catch (Exception e) {   
45.  
46.   for (StackTraceElement s : e.getStackTrace())   
47.  
48.    Log.d("Exception", s.toString());   
49.  
50.   Log.d("Exception", e.getLocalizedMessage());   
51.  
52.   return str;   
53.  
54.  }   
55.  
56.  return str;   
57.  
58. }

标签:String,data,base64,params,str,new,android,上传
From: https://blog.51cto.com/u_548275/6237806

相关文章

  • Android 用户界面---样式和主…
    样式是给View或Window指定外观和格式的属性集合。样式能够指定如高、边距、字体颜色、字体尺寸、背景颜色等属性。样式被定义在一个与布局XML文件分开的XML资源文件中。Android中的样式与Web设计中的层叠式样表类似,允许与内容分开设计。例如,通过使用样式,可以把下面这个布局XML转换......
  • Android应用程序的安装位置(二)
    不应该安装在外部存储器上的应用程序当用户启用USB存储器来跟计算机共享文件时(或者是卸载或移除外部存储器),任何被安装在外部存储器上,并且当前正在运行的应用程序都会被杀死。在USB存储器被禁用和外部存储器被重新挂载到设备上之前,系统不会有效的感知到引用程序的存在。除了终止应......
  • 初始化一个项目,如何通过git上传到远程仓库
    下面是通过git将本地项目上传到远程仓库的步骤:在本地创建一个新的Git仓库,并进行初始化:$gitinit添加所有文件到Git索引中:$gitadd.如果你只想添加单个文件,可以将.替换为文件名。提交所有的改动到本地Git仓库:$gitcommit-m"initialcommit"这里的initialcommit是......
  • Windows 11 启用 Hyper-V 之后网络上传速度异常慢解决方案
    最近在开发用的台式机上启用了Windows的Hyper-V虚拟化功能,利用虚拟机运行了一台WindowsServer2022和一台UbuntuServer,为了方便别的机器直接访问这两台虚拟机,所以网络采用了外部网络桥接的模式,让虚拟机和物理机保持在了同一网段。为了实现在这一目的,所以创建了一个虚......
  • uniapp android app 铃声静音,真正的免打扰
    需要加入这个权限:<uses-permissionandroid:name=\"android.permission.ACCESS_NOTIFICATION_POLICY\"/>代码:/***设置铃声为静音,媒体音量不变(免打扰)**/setDisturb(){//#ifd......
  • 超大文件上传和断点续传的实例解析
    ASP.NET上传文件用FileUpLoad就可以,但是对文件夹的操作却不能用FileUpLoad来实现。下面这个示例便是使用ASP.NET来实现上传文件夹并对文件夹进行压缩以及解压。ASP.NET页面设计:TextBox和Button按钮。TextBox中需要自己受到输入文件夹的路径(包含文件夹),通过Button实现选择文件夹......
  • 超大文件上传和断点续传的示例
    ​ 需求:项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在500M内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以501M来进行限制。 第一步:前端修改由于项目使用的是BJUI前端框架,并没有使用框架本身的文件上传控件,而使用的基于jQuery的Uploadify......
  • VC下Base64编码及解码程序源代码
    //Base64.h:interfacefortheCBase64class.////#if!defined(AFX_BASE64_H__8D85F486_CD10_4A0A_A689_2299C9DE52CB__INCLUDED_)#defineAFX_BASE64_H__8D85F486_CD10_4A0A_A689_2299C9DE52CB__INCLUDED_#if_MSC_VER>1000#pragmaonce#endif//_MSC_V......
  • 超大文件上传和断点续传的功能
    ​ 一、概述 所谓断点续传,其实只是指下载,也就是要从文件已经下载的地方开始继续下载。在以前版本的HTTP协议是不支持断点的,HTTP/1.1开始就支持了。一般断点下载时才用到Range和Content-Range实体头。HTTP协议本身不支持断点上传,需要自己实现。 二、Range  用于请求头......
  • 【专栏精选】实战:使用LeanCloud上传玩家分数,实现排行榜
    本文节选自洪流学堂公众号技术专栏《大话Unity2019》,未经允许不可转载。洪流学堂公众号回复专栏,查看更多专栏文章。洪流学堂,让你快人几步。你好,我是郑洪智。小新:“有了用户登录后,我们总要拿来做点什么事情吧?”大智:“有了用户登陆信息之后,就可以针对用户来存储他自己的信息了,比如......