国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

Silverlight將圖片轉換為byte的實現代碼

2019-10-29 21:36:23
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了Silverlight將圖片轉換為byte的實現代碼,需要的朋友可以參考下

最近總是有人問如何通過Silverlight上傳圖片并保存的后臺服務器?眾所周知,Silverlight是客戶端程序,不能很好與服務器進行“溝通”,上傳圖片的方法呢大致都是通過以下流程:

1、客戶端獲取圖片-->2、轉換能夠傳輸的數據-->3、傳遞數據到服務端-->4、服務端還原數據為圖片

第一步和第四步沒有問題,問題大多出在第二步和第三步,如何得到客戶端和服務端都能識別并且容易傳遞的數據呢?

如果你使用的客戶端和服務端都是.NET方案,這就非常好辦,可以通過下面的方法:

1、客戶端得到客戶選擇的FileInfo,然后通過WebClient方法post到服務端,服務端再還原成圖片即可

2、客戶端將客戶選擇的圖片文件轉換成FileStream包裹在一個類中通過WCF傳遞到服務端,服務端再還原

有些同學會抓耳撓腮的問,難道就沒有人用silverlight傳遞到類似JAVA,PHP的情況嗎?當然有,而且我最近碰到的都是這類似的情況,事先聲明我不是實在不了解JAVA和PHP,我只能將圖片轉換成byte給你,至于你怎么還原,我只能說:”同學,任重而道遠!“,不廢話了,下面見分析:

之前走了不少彎路,總是想著將WriteableBitmap轉換成byte(也不知道是誰上來就讓用WriteableBitmap轉,T_T),后來我才發現其實完全沒必要這么麻煩,直接上代碼:

 

 
  1. byte[] staticByte;//全局byte,為將byte轉換為Image 
  2.  
  3. private void OpenImage() 
  4. OpenFileDialog imageFile = new OpenFileDialog() 
  5. Filter = "Jpeg Files (*.jpg)|*.jpg|All Files(*.*)|*.*" 
  6. }; 
  7. if (imageFile.ShowDialog() == true
  8. {  
  9. System.IO.Stream fileStream=imageFile.File.OpenRead(); 
  10. byte[] imageByte=new byte[fileStream.Length];//設置byte的長度為文件流的長度 
  11. fileStream.Read(imageByte,0,imageByte.Length);//將文件流信息讀取到byte數組中 
  12. staticByte = imageByte;//將讀取好的byte數組保存到全局 
  13. byteTextBox.Text=UTF8Encoding.UTF8.GetString(imageByte,0,imageByte.Length);//將byte數組顯示到前臺 

直接通過FileStream.Read方法將文件流轉換成byte,ok完工!

后面我加了一點代碼將byte又轉換成圖片,代碼如下:

 

 
  1. private void button1_Click(object sender, RoutedEventArgs e) 
  2. OpenImage(); 
  3. MemoryStream memoryStream = new MemoryStream(staticByte,0,staticByte.Length);//將byte轉換為內存流 
  4. BitmapImage img = new BitmapImage(); 
  5. img.SetSource(memoryStream);//設置BitmapImage的源為內存流 
  6. this.image1.Source = img;//顯示圖片 

程序圖片

選擇圖片界面

Silverlight將圖片轉換為byte的實現代碼

效果界面

Silverlight將圖片轉換為byte的實現代碼

程序源碼

使用vs2010 sp1+silverlight5編寫,SilverlightImageToByte


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 绿春县| 昌黎县| 桃园市| 巧家县| 高青县| 宿松县| 华蓥市| 东海县| 崇礼县| 淳安县| 隆德县| 通州市| 岢岚县| 中江县| 宿迁市| 邮箱| 广平县| 阿坝县| 桃江县| 泊头市| 河北区| 厦门市| 定日县| 尼木县| 白河县| 彩票| 惠安县| 苏尼特左旗| 洛宁县| 松原市| 宁远县| 永德县| 长岛县| 遂溪县| 洛隆县| 辽源市| 陆良县| 吉木乃县| 乌海市| 马关县| 二连浩特市|