System.ArgumentException'发生在mscorlib.dll中
本文关键字:mscorlib dll ArgumentException System | 更新日期: 2023-09-27 18:13:03
class Program
{
public static string GetChecksum(string m_fileinput)
{
string m_checksum;
using (FileStream stream = File.OpenRead(m_fileinput))
{
SHA256Managed sha = new SHA256Managed();
byte[] checksum = sha.ComputeHash(stream);
m_checksum =
BitConverter.ToString(checksum).Replace("-", String.Empty);
}
return m_checksum;
}
static void Main(string[] args)
{
string fileContent = File.ReadAllText("C://Users//wiproat3//Desktop//checksum.txt");
string checksum = GetChecksum(fileContent);
Console.WriteLine(checksum);
Console.ReadLine();
}
}
我正在尝试为文件创建校验和。虽然调试文件内容是红色的,但我得到这个错误"类型'系统的第一次机会异常。在" fileststream "行中mscorlib.dll"发生了ArgumentException。
您只需更正对GetChecksum
函数的调用。
现在你将checksum.txt的完整内容作为字符串传递给GetChecksum
的m_fileinput参数。但是File.OpenRead
正在等待文件路径-而不是文件的内容。
你所要做的就是更新Main函数,使其看起来像下面的代码:
static void Main(string[] args)
{
string checksum = GetChecksum("C://Users//wiproat3//Desktop//checksum.txt");
Console.WriteLine(checksum);
Console.ReadLine();
}