c# checksum 如何計(jì)算文件的校驗(yàn)和

c#
小樊
94
2024-09-04 14:32:44
欄目: 編程語言

在C#中,可以使用System.Security.Cryptography命名空間中的類來計(jì)算文件的校驗(yàn)和

using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;

class Program
{
    static void Main(string[] args)
    {
        string filePath = "path/to/your/file";
        string checksum = CalculateChecksum(filePath);
        Console.WriteLine($"Checksum of the file: {checksum}");
    }

    public static string CalculateChecksum(string filePath)
    {
        using (var md5 = MD5.Create())
        {
            using (var stream = File.OpenRead(filePath))
            {
                byte[] hash = md5.ComputeHash(stream);
                return BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant();
            }
        }
    }
}

這個(gè)示例代碼首先創(chuàng)建一個(gè)MD5哈希算法實(shí)例,然后打開要計(jì)算校驗(yàn)和的文件。接著,使用ComputeHash方法計(jì)算文件流的哈希值。最后,將字節(jié)數(shù)組轉(zhuǎn)換為十六進(jìn)制字符串表示形式并返回。

請(qǐng)注意,這里使用的是MD5算法。你還可以選擇其他哈希算法,如SHA-1、SHA-256等。只需將MD5.Create()替換為相應(yīng)的創(chuàng)建方法即可。例如,要使用SHA-256,可以將其替換為SHA256.Create()。

0