gpt4 book ai didi

Silverlight将图片转换为byte的实现代码

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 27 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Silverlight将图片转换为byte的实现代码由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

最近总是有人问如何通过Silverlight上传图片并保存的后台服务器?众所周知,Silverlight是客户端程序,不能很好与服务器进行“沟通”,上传图片的方法呢大致都是通过以下流程:

  1、客户端获取图片-->2、转换能够传输的数据-->3、传递数据到服务端-->4、服务端还原数据为图片 。

  第一步和第四步没有问题,问题大多出在第二步和第三步,如何得到客户端和服务端都能识别并且容易传递的数据呢?

  如果你使用的客户端和服务端都是.NET方案,这就非常好办,可以通过下面的方法:

  1、客户端得到客户选择的FileInfo,然后通过WebClient方法post到服务端,服务端再还原成图片即可,详细文章http://www.zzvips.com/article/201566.html 。

2、客户端将客户选择的图片文件转换成FileStream包裹在一个类中通过WCF传递到服务端,服务端再还原,详细文章https://www.zzvips.com/article/201567.html 。

  有些同学会抓耳挠腮的问,难道就没有人用silverlight传递到类似JAVA,PHP的情况吗?当然有,而且我最近碰到的都是这类似的情况,事先声明我不是实在不了解JAVA和PHP,我只能将图片转换成byte给你,至于你怎么还原,我只能说:”同学,任重而道远!“,不废话了,下面见分析:

  之前走了不少弯路,总是想着将WriteableBitmap转换成byte(也不知道是谁上来就让用WriteableBitmap转,T_T),后来我才发现其实完全没必要这么麻烦,直接上代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
byte [] staticByte; //全局byte,为将byte转换为Image
 
   private void OpenImage()
   {
    OpenFileDialog imageFile = new OpenFileDialog()
    {
     Filter = "Jpeg Files (*.jpg)|*.jpg|All Files(*.*)|*.*"
    };
    if (imageFile.ShowDialog() == true )
    {
     System.IO.Stream fileStream=imageFile.File.OpenRead();
     byte [] imageByte= new byte [fileStream.Length]; //设置byte的长度为文件流的长度
     fileStream.Read(imageByte,0,imageByte.Length); //将文件流信息读取到byte数组中
     staticByte = imageByte; //将读取好的byte数组保存到全局
     byteTextBox.Text=UTF8Encoding.UTF8.GetString(imageByte,0,imageByte.Length); //将byte数组显示到前台
    }
   }

直接通过FileStream.Read方法将文件流转换成byte,ok完工! 。

  后面我加了一点代码将byte又转换成图片,代码如下:

?
1
2
3
4
5
6
7
8
private void button1_Click( object sender, RoutedEventArgs e)
   {
    OpenImage();
    MemoryStream memoryStream = new MemoryStream(staticByte,0,staticByte.Length); //将byte转换为内存流
    BitmapImage img = new BitmapImage();
    img.SetSource(memoryStream); //设置BitmapImage的源为内存流
    this .image1.Source = img; //显示图片
   }

程序图片 。

选择图片界面 。

Silverlight将图片转换为byte的实现代码

  。

效果界面 。

Silverlight将图片转换为byte的实现代码

  。

程序源码   使用vs2010 sp1+silverlight5编写,SilverlightImageToByte 。

最后此篇关于Silverlight将图片转换为byte的实现代码的文章就讲到这里了,如果你想了解更多关于Silverlight将图片转换为byte的实现代码的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com