服务器端 方法内代码
String fileName = request.getParameter("fileName"); String str = request.getParameter("file"); log.info(fileName+"------------"); log.info(str+"-=================="); BASE64Decoder decoder = new BASE64Decoder(); try { // Base64解码 byte[] bytes = decoder.decodeBuffer(str); for (int i = 0; i < bytes.length; ++i) { if (bytes[i] < 0) {// 调整异常数据 bytes[i] += 256; } } // 生成图片 OutputStream outs = new FileOutputStream(filepath+fileName); outs.write(bytes); outs.flush(); outs.close(); return null; } catch (Exception e) { logger.error("", e); }
客户调用端
public static String getPicBASE64() { String picPath = "/var/xxxx.png"; String content = ""; try { FileInputStream fileForInput = new FileInputStream(picPath); byte[] bytes = new byte[fileForInput.available()]; if(bytes.length<102400){ System.out.print(bytes.length); } fileForInput.read(bytes); content = new sun.misc.BASE64Encoder().encode(bytes); // 具体的编码方法 fileForInput.close(); } catch (Exception e) { e.printStackTrace(); } return content; } public static void main(String[] args) throws Exception { URL url = new URL("http://**********:80/newdemo/app/imageUpload.do"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setDoOutput(true); connection.setDoInput(true); // Post 请求不能使用缓存 connection.setUseCaches(false); // URLConnection.setFollowRedirects是static函数,作用于所有的URLConnection对象。 // connection.setFollowRedirects(true); // URLConnection.setInstanceFollowRedirects是成员函数,仅作用于当前函数 connection.setInstanceFollowRedirects(false); // 配置本次连接的Content-type,配置为application/x-www-form-urlencoded的 // 正文是urlencoded编码过的form参数,下面我们可以看到我们对正文内容使用URLEncoder.encode // 进行编码 connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); // 连接,从postUrl.openConnection()至此的配置必须要在connect之前完成, // 要注意的是connection.getOutputStream会隐含的进行connect。 connection.connect(); Long sendTime = System.currentTimeMillis(); DataOutputStream out = new DataOutputStream( connection.getOutputStream()); // 要传的参数 String content ="fileName=ssh2.jpg"; // 得到图片的base64编码 content = content + "&" + URLEncoder.encode("file", "UTF-8") + "="+ URLEncoder.encode(getPicBASE64(), "UTF-8"); out.writeBytes(content); out.flush(); out.close(); } }
相关推荐
在网页中把Base64字符串显示为图片很容易,但是当前台使用Thymeleaf框架时,就得绕个小弯子,直接使用html框架中的方法不行,本文详解了用Thymeleaf显示Base64字符串为图片的方法,望对大家有所帮助。
LabVIEW实现Base64加密解密程序源码,可以作为子VI...base 64编码将用户输入或二进制数据,打包成一种安全格式,将其作为HTTP首部字段的值发送出去,而无须担心其中包含会破坏HTTP分析程序的冒号、换行符或二进制值。
Qt之 Post方法上传图片到服务器两种方式Base64流和File
NULL 博文链接:https://eric-gao.iteye.com/blog/1705795
将图片以Base64的编码,内嵌在html的代码中, 提供的是样例代码 即: 不是在html中指定图片的路径的形式 结合: ...工具(从图片文件,得到Base64编码): http://www.vgot.net/test/image2base64.php
HTML5 PHP base64图片压缩上传程序,现在像很多WEB上传程序包括微信、QQ等在发送一些图片的时候,会自动压缩(衰减)图片,这样可有效保证速度,节省用户流量,这个例子采用base64图片压缩算法,将图片按比例压缩,...
现在像很多WEB上传程序包括微信、QQ等在发送一些图片的时候,会自动压缩(衰减)图片,这样可有效保证速度,节省用户流量,这个例子采用base64图片压缩算法,将图片按比例压缩,压缩比率可以自己调整。本代码可扩展...
这是一个很好的Base64编-解码工具.转换很方便,支持中文,支持UTF-8,Unicode编码,可对对图片数据进行解码。 Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,可以参见RFC2045~RFC2049,上面有MIME...
python+requests请求网络图片并以base64格式保存到json中from gevent import monkey;from decimal im
如何使用 Google 的协议缓冲区通过 websocket 以 base64 格式发送图像的示例 要运行这个应用程序,你需要在你的机器上克隆这个 repo 并运行: npm install 下载依赖项后,您需要运行 websocket 服务器并运行应用...
只需将Release\Clip_B64.exe放在%AppData%\Microsoft\Windows\SendTo文件夹中,然后使用“发送到”上下文菜单将文件放在剪贴板上。 结果经过base64编码,可以从剪贴板粘贴到putty-ssh远程shell窗口中,并可以使用...
专门上传小型图片,省去PHP文件域上传的烦恼,非常的方便,通过普通的POST发送,PHP正常接收后转换即可。
简单的实现了AFNetworking 3.0的图片上传功能
java邮件发送Demo(完整例子):下面是我的测试方法: public static void demo(){ Mail mail=new Mail(); mail.setSmtpHost("smtp.163.com");/** 设置SMTP **/ String mailFrom="wangxin_admin@163.com"; ...
在Base64中以HTML / JS检索图像,以便可以显示它们,将其保存在本地存储中并使用HTTP POST发送 设置目标格式(仅适用于iOS) 如果5秒钟内未请求,则自动停止捕获;在请求图像时唤醒相机 如何使用CameraPlus? 将...
主要介绍了Java Base64算法实际应用之邮件发送,结合实例形式分析了java字符编码与邮件发送相关操作技巧,需要的朋友可以参考下
现在像很多WEB上传程序包括微信、QQ等在发送一些图片的时候,会自动压缩(衰减)图片,这样可有效保证速度,节省用户流量,这个例子采用base64图片压缩算法,将图片按比例压缩,压缩比率可以自己调整。本代码可扩展...
图像数据通过Base64编码,定义为Json格式传输 前端收到Json数据后 将图像还原 代码有任何问题可以和我联系 liangji@csu.ac.cn 一起学习,此外也可以看我的博客 博客有更详细的介绍博客搜索qq_20038925即可
利用DataOutputStream...之间试过由OutpuStream.write(byte[])以及先将图片byte[]通过Base64加密转换为String再发送,效果都不好,可能是由于图片数据比文本数据还是相对大很多,发送一次还行,但是做不到不间断传输。
TCP传输图片,先将图片经行数据转换,程序实测可运行