程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C# 加密小工具代碼實現

C# 加密小工具代碼實現

編輯:C#入門知識

\

關鍵點有以下幾個:

1、openFileDialog控件的使用
如果通過單擊選擇按鈕來實現選擇本地某個文件的功能呢?
具體來說分為以下幾步:

a、新建Winform窗體,畫好相應的控件。

b、在工具箱中找到openFileDialog,拖到“選擇文件”按鈕上,此時會出現如下這種效果:

\

此時openFileDialog會顯示在界面的下方,而不是界面上,這樣就可以了,通過單擊“選擇文件”按鈕即可實現打開本地某個文件的功能。

同時“選擇文件”按鈕的Click函數中需要添加下面幾行代碼:

DialogResult diaResult = this.openFile.ShowDialog();
if (diaResult == DialogResult.OK)
{        
//內部可以獲取文件名之類的信息
}

那麼如果獲取打開路徑下的文件名、路徑信息呢?

可以通過這幾個屬性來實現:

a、openFileDialog控件的FileName屬性來獲取路徑信息,此時的路徑信息包含文件名及文件拓展名。

比如:E:\Work\Vs\TestEncryption\加密處理\待加密\死亡海岸線.txt

b、如果只想獲取“死亡海岸線”這個文件名呢?

Path.GetFileNameWithoutExtension(pathName)即可以實現這個功能,而且此時不帶文件拓展名奧,傳入參數pathName就是a中的路徑信息。

那麼如何在選擇相應文件後,獲取文件大小及拓展名呢?如下代碼即可實現:

FileInfo fi = new FileInfo(pathName);
filetype = fi.Extension;//文件拓展名
filesize = fi.Length;//文件信息的字節數
openFileDialog控件設置初始打開路徑有三種方式:
1、下面兩行代碼的效果是一樣的(這是兩種):
openFileSave.InitialDirectory = "E:\\Work\\Vs\\TestEncryption\\加密處理\\保存文件";
openFileSave.InitialDirectory = @"E:\\Work\\Vs\\TestEncryption\\加密處理\\保存文件";

還有一種方式是通過openFileDialog控件右擊屬性來實現的。

其中有一個屬性是:InitialDirectory,在其後面填寫:E:\Work\Vs\TestEncryption\加密處理\待加密\保存文件,效果與上面兩行代碼一樣。

c、其中用到的幾個函數為:

        /// 
        /// 讀取執行路徑下文件信息
        /// 
        /// 指定的路徑
        /// 起始位置,一般設為零
        /// 文件信息的長度
        /// 
        public static byte[] ReadFile(string filename, int start, int length)
        {
            byte[] btFile = null;
            using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
            {
                btFile = new byte[length];
                fs.Seek(start, SeekOrigin.Begin);
                fs.Read(btFile, 0, length);
            }
            return btFile;
        }
//將byte數組轉換為string
        public static string BytesToString(byte[] bt)
        {
            return Encoding.UTF8.GetString(bt);
        }

小注:

1、關於C#加密的代碼,網上有各種各樣,大家可以參考。

2、MD5 並不是加密算法,而是摘要算法。加密算法是可逆的,摘要算法是理論上不可逆的。如果說MD5是加密算法,那還不如稱他是超級壓縮算法呢,因為你輸入任意長度的明文給他,結果都是一個定長16 、32、64。

3、將加密後的信息寫入指定文件,可以參考記錄文本日志的函數。

4、ComBox控件的使用可以參考:ComBox控件。




  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved