成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#創(chuàng)建文件的實(shí)戰(zhàn)應(yīng)用示例解析

開發(fā) 后端
C#創(chuàng)建文件的實(shí)戰(zhàn)應(yīng)用示例主要向你介紹了在文件傳送過(guò)程中使用C#創(chuàng)建文件中的MD5加密方法,那么這里就向你介紹詳細(xì)的實(shí)現(xiàn)過(guò)程。

由于Internet的開放性,C#創(chuàng)建文件的應(yīng)用很廣泛,如在任何文件在傳輸過(guò)程中都可能受到篡改,而且傳輸過(guò)程的不確定性,使得我們?nèi)狈τ行У姆椒ūWC傳輸文件的安全。那么如何找到解決問(wèn)題的方法呢?這里我們來(lái)談?wù)勈褂肅#創(chuàng)建文件的應(yīng)用。

為了避免上述情況,最普遍的做法是隨傳輸文件提供一個(gè)C#創(chuàng)建文件中的驗(yàn)證碼,用戶在收到文件后,通過(guò)重新計(jì)算文件驗(yàn)證碼并與原始驗(yàn)證碼比較,如果不匹配則表示文件在傳輸過(guò)程中發(fā)生了改變。下面,筆者就使用C#給大家演示一下具體的實(shí)現(xiàn)過(guò)程。

C#創(chuàng)建文件應(yīng)用一、創(chuàng)建FileStream

在構(gòu)建文件驗(yàn)證碼之前,首先需要加載文件,這就要用到.Net framework的FileStream類。在.Net framework下,文件都表示為一個(gè)Stream,即字節(jié)序列的抽象概念。而所有涉及文件的讀寫操作都通過(guò)Stream類的屬性和方法實(shí)現(xiàn)。下面,就是具體的實(shí)現(xiàn)代碼:

  1. FileStream fst= new FileStream(  
  2.  
  3. txtFile.Text,FileMode.Open,  
  4.  
  5. FileAccess.Read, FileShare.Read, 8192);  

這里使用了FileStream構(gòu)建函數(shù)的一種重載方法,需要提一下的是最后一個(gè)參數(shù)值8192,該參數(shù)值定義的是緩沖區(qū)的大小,即當(dāng)文件大于8K時(shí),以8K為單位,對(duì)文件進(jìn)行分段讀取,以提高讀取文件的性能。

C#創(chuàng)建文件二、創(chuàng)建MD5對(duì)象

在成功創(chuàng)建FileStream對(duì)象之下,接下來(lái)就可以使用MD5類計(jì)算該對(duì)象的哈希值了。這個(gè)實(shí)現(xiàn)過(guò)程非常簡(jiǎn)單,只要先聲明一個(gè) MD5CryptoServiceProvider實(shí)例,然后使用ComputeHash方法完成計(jì)算過(guò)程,最后通過(guò)Hash屬性就可以得到計(jì)算好的字節(jié)數(shù)組了。

  1. ……  
  2.  
  3. MD5CryptoServiceProvider md5=  
  4.  
  5. new MD5CryptoServiceProvider();  
  6.  
  7. FileStream fst= new FileStream(txtFile.Text,FileMode.Open,  
  8.  
  9. FileAccess.Read, FileShare.Read, 8192);  
  10.  
  11. md5.ComputeHash(fst);  
  12.  
  13. byte[] hash=md5.Hash;  
  14.  
  15. ……  

C#創(chuàng)建文件三、轉(zhuǎn)換驗(yàn)證碼字符串

由于MD5哈希算法返回的是一個(gè)字節(jié)數(shù)據(jù),因此需要轉(zhuǎn)換成字符串。以下就是具體實(shí)現(xiàn)的代碼。

  1. ……  
  2.  
  3. byte[] hash=md5.Hash;  
  4.  
  5. StringBuilder sb=new StringBuilder();  
  6.  
  7. foreach(byte byt in hash)  
  8.  
  9. {  
  10.  
  11. sb.Append(String.Format("{0:X1}", byt));  
  12.  
  13. }  
  14.  
  15. TextBox1.Text = sb.ToString();  
  16.  
  17. ……  

在轉(zhuǎn)換過(guò)程中,首先定義了一個(gè)StringBuilder對(duì)象,這主要是處于性能上的考慮;接著遍歷MD5哈希值中的每個(gè)字節(jié),并使用String.Format方法直接將字節(jié)轉(zhuǎn)換成16進(jìn)制格式的字符串,最后輸出結(jié)果字符串即可。

注:通過(guò)本例生成的MD5驗(yàn)證碼與同類MD5驗(yàn)證碼校驗(yàn)工具在算法上完全一致,因此完全適用于實(shí)際應(yīng)用場(chǎng)合。

C#創(chuàng)建文件的應(yīng)用有很多,那么這次的應(yīng)用解決是不是很巧妙呢?希望對(duì)你了解和學(xué)習(xí)C#創(chuàng)建文件方面有所幫助。

【編輯推薦】

  1. C#變量初始化分類詳解
  2. 淺析C#變量初始化的具體實(shí)現(xiàn)
  3. C#創(chuàng)建文件夾的實(shí)際應(yīng)用淺析
  4. 淺析C#創(chuàng)建文件夾實(shí)現(xiàn)實(shí)例
  5. C#創(chuàng)建文件夾實(shí)現(xiàn)方法詳解
責(zé)任編輯:仲衡 來(lái)源: fheyes.cn
相關(guān)推薦

2009-08-31 10:56:54

C#創(chuàng)建文件夾

2009-08-31 12:56:36

C#創(chuàng)建文件夾

2009-08-31 12:31:45

C#創(chuàng)建文件夾

2014-03-17 10:27:08

Linux cp備份

2009-09-09 14:04:18

C# XML解析XML解析方法

2009-08-31 13:32:38

C#創(chuàng)建XML文件

2009-09-01 13:51:51

C#創(chuàng)建Word文檔

2009-09-01 09:46:51

C# FileStre

2009-09-01 10:28:38

C#追加文件

2009-09-03 09:16:35

C#遞歸函數(shù)

2009-09-03 15:43:21

C#時(shí)間計(jì)算

2009-08-21 10:00:43

C#創(chuàng)建XML文件XmlTextWrit

2009-09-01 17:08:14

C#畫線控件

2009-08-31 14:01:50

C#創(chuàng)建一個(gè)文件

2009-09-01 10:10:51

C# StreamRe

2009-09-04 12:22:41

C#日期格式化

2009-09-01 14:39:47

C#創(chuàng)建Excel文件

2009-01-19 11:07:42

C#Web.NET

2009-08-28 11:09:35

C#數(shù)組初始化

2024-05-06 00:00:00

ThreadPool線程調(diào)度
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 男女激情网站免费 | 一区二区三区福利视频 | 亚洲欧美日韩精品 | 狠狠亚洲 | 久久久人成影片一区二区三区 | 国产91av视频在线观看 | 一区二区三区在线看 | 欧美日韩中文字幕 | 久久亚洲精品国产精品紫薇 | 青青操91 | 四虎影院在线观看av | 国产精品国产三级国产aⅴ无密码 | 精品国产99 | 国产激情网| 亚洲 欧美 另类 综合 偷拍 | av大片| 国产欧美精品一区 | av色噜噜 | 欧美一级全黄 | 在线黄色网 | 在线视频亚洲 | 亚洲综合中文字幕在线观看 | 操久久| a级在线免费观看 | 麻豆视频国产在线观看 | 91av在线影院| 视频在线观看一区二区 | 成人黄视频在线观看 | 国产精品国产亚洲精品看不卡15 | 99精品国产一区二区青青牛奶 | 午夜丰满寂寞少妇精品 | 欧美激情久久久 | 久久久久国产成人精品亚洲午夜 | 美女国内精品自产拍在线播放 | 国产精品久久久久久婷婷天堂 | 久久久久久蜜桃一区二区 | 国产综合精品一区二区三区 | 色爱区综合 | 91在线精品视频 | 日韩一区在线观看视频 | 91精品久久久久久久久久小网站 |