通过网络路径获取的图片 btye 图片流互转

楼主有一个需要用户用的网站要上传图片,图片不保存到网站,而是要专门存放到一个图片服务器上面,于是需要通过byte的形式来传输

之前写的一个本地图片流转于byte互转 后来发现通过网络路径获取的图片这个方法就用不了 后来百度了 换了一个新的写法



图片流转成byte数组

1      public byte[] SaveImage(Image image)
2         {
3             MemoryStream ms = new MemoryStream();
4             BinaryFormatter bf = new BinaryFormatter();
5             bf.Serialize(ms, (object)image);
6             ms.Close();
7             return ms.ToArray();
8         }

然后byte转成图片流并且保存

 1 //保存图片
 2 var path = "\\Upload\\LINGDAO\\" + DateTime.Now.Date.ToString("yyyy-MM-dd") + "\\";
 3 var serverPath = Server.MapPath("~" + path);//图片路径
 4 if (!Directory.Exists(serverPath))
 5 {
 6       Directory.CreateDirectory(serverPath);//创建文件夹
 7 }
 8       string fileName = Guid.NewGuid().ToString() + ".jpeg";
 9       10       //图片流存储为图片文件
11        MemoryStream ms = new MemoryStream(data, 0, data.Length);
12        BinaryFormatter bf = new BinaryFormatter();
13        object obj = bf.Deserialize(ms);
14        ms.Close();
15        var img=(Image)obj;
16        img.Save(serverPath + fileName, ImageFormat.Jpeg);

需要注意的是在传送个接收的这个byte的数组的时候 要转换的流格式一致才能互转成功 否则就转换出来的东西可以打不开或者无效

时间: 2024-10-07 05:12:05

通过网络路径获取的图片 btye 图片流互转的相关文章

【转】网络爬虫获取网站图片

转自:http://blog.csdn.net/huangxy10/article/details/8120106 备注:把项目属性中的字符集改成多字节集合? 1 // 网络爬虫.cpp : 定义控制台应用程序的入口点. 2 // 3 4 #include "stdafx.h" 5 /* 6 7 int _tmain(int argc, _TCHAR* argv[]) 8 { 9 return 0; 10 } 11 12 */ 13 14 //#include <Windows.

关于app生成商品图片,取代网络远程获取商品图片的设想

当我在使用各种电子商务或者O2O等app时,app在不断的从远程服务器处获取各种商品图片.是否可以取消这种方式?仅仅通过app生成. app生成图片,服务器提供商品描述指令.比如,app需要显示一个苹果图片时,服务器提供一个简单的商品描述指令:apple.当app获取到apple这个指令时,就自动绘制出苹果图片.这样,在app与服务器之间的数据传输将只有简单的描述指令等一些简单的信息. 那么关键问题转移到了图片生成上.

Android(java)学习笔记204:自定义SmartImageView(继承自ImageView,扩展功能为自动获取网络路径图片)

1.有时候Android系统配置的UI控件,不能满足我们的需求,Android开发做到了一定程度,多少都会用到自定义控件,一方面是更加灵活,另一方面在大数据量的情况下自定义控件的效率比写布局文件更高. 2.下面我们是自定义一个SmartImageView继承自ImageView,扩展了ImageView的功能:     步骤: • 新建一个SmartImageView类,让继承自ImageView(放置特定的包下): • 实现SmartImageView类下的构造方法,最好全部实现,这个不容易出

内容和图片在从网络上获取到之后都会存入到本地缓存中

内容和图片在从网络上获取到之后都会存入到本地缓存中,因此即使手机在没有网络的情况下依然能够加载出以前浏览过的新闻.而使用的缓存技术不用多说,自然是DiskLruCache了,那么首先第一个问题,这些数据都被缓存在了手机的什么位置呢? 其实DiskLruCache并没有限制数据的缓存位置,可以自由地进行设定,但是通常情况下多数应用程序都会将缓存的位置选择为 /sdcard/Android/data/<application package>/cache 这个路径.选择在这个位置有两点好处:第一,

提问!同一ajax请求获取的图片路劲,在谷歌浏览器能正确展示图片,在火狐浏览器则显示路径undefined

今天的工作学习之路遇见一个奇葩的问题,作为初级攻城狮的小生实在不知如何解决,都已经壁咚度娘一整天了,都未能解决问题,实属无奈,一开始认为是浏览器兼容的问题,但左看右看,也不是,也尝试过是不是页面加载与请求后没对应上,发现也不是,检查返回的结果,居然是undefined,可是在谷歌浏览器没有任何问题能正常展示图片,在火狐浏览器却是这样,来,看图说话: 首先此<img>标签为js动态拼接页面,因为获取的是会员等级,通过请求接口在另一个系统后台抓取图片路径,此拼接在循环中,每循环一次存入便存入数组中

根据url路径获取图片并显示到ListView中

项目开发中我们需要从网络获取图片显示到控件中,很多开源框架如Picasso可以实现图片下载和缓存功能.这里介绍的是一种简易的网络图片获取方式并把它显示到ListView中. 本案例实现的效果如下: 项目结构: 根据部分开源代码,我修改并封装了一个网络图片加载的工具类GetImageByUrl,通过调用其中的setImage方法,传入待显示图片的ImageView控件和该图片的url路径这两个参数即可实现获取网络图片的功能. GetImageByUrl.java package com.leo.i

Java根据路径获取图片的时候有时候会得不到图片

在保证图片路径正确的情况下,可能是获取图片流的方式不对. 我在用Java.awt.*相关的包调用系统打印机进行打印的时候,会出现打不出图片的情况,这个时候换一种读取图片的方式就可以了. 1 //这种方式会出现偶然丢失图片的情况,有的时候打得出来有的时候打不出来 2 //Image image = ToolKit.getDefaultToolKit().createImage("eg.jpg"); 3 //换成这种方式获取就没问题了 4 Image image = new ImageIc

android开发之——获取相册图片和路径

Android开发获取相册图片的方式网上有很多种,这里说一个Android4.4后的方法,因为版本越高,一些老的api就会被弃用,新的api和老的api不兼容,导致出现很多问题. 比如:managedQuery()现在已经被getContentResolver().query()替代了,不过它们的参数都是一样的 再比如Android4.4后Intent(Intent.ACTION_GET_CONTENT);和Intent(Intent.ACTION_OPEN_DOCUMENT);两个方法所得到的

关于Android4.4的图片路径获取,如果回来的Uri的格式有两种

关于Android4.4的图片路径获取,如果回来的Uri的格式有两种1.content://com.android.providers.media.documents/document/image:39512.content://media/external/images/media/3951 解决办法:    1).        //>=4.4    时        if(DocumentsContract.isDocumentUri(context, contentUri)){